aboutsummaryrefslogtreecommitdiffstats
path: root/package
Commit message (Collapse)AuthorAgeFilesLines
* fstools: update to git HEAD (again)Daniel Golle2021-07-241-3/+3
| | | | | | | a846c6b blockd: fix length of timeout int passed to ioctl 1d681ca block: support umount device basename Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* fstools: update to git HEADDaniel Golle2021-07-241-3/+3
| | | | | | | | | | 59f7c11 blockd: create mountpoint parent folder if needed 9cc96af Revert "block: resolve /dev/mapper/* name for /dev/dm-0 when hotplugging" 06334ac Revert "blockd: detect mountpoint of /dev/mapper/*" 9ab3551 block: use /dev/dm-* instead of /dev/mapper/* 5114595 block: allow remove hotplug event to arrive at blockd Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* kernel: add missing symbol to kmod-qlcnicStijn Tintel2021-07-231-1/+2
| | | | | | | | When the kmod-qlcnic package is built on targets that have CONFIG_PCI_IOV enabled, the CONFIG_QLCNIC_SRIOV symbol is exposed. Enable this symbol in the kmod package to fix its build. Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
* uboot-mediatek: fix board name of Bananapi BPi-R2Daniel Golle2021-07-201-1/+1
| | | | | | | | As the board name was changed to be identical to the device tree compatible string (just like for other boards), also reflect that change for U-Boot. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: add configuration for Bananapi BPi-R2Daniel Golle2021-07-201-0/+25
| | | | | | | | Add fw_env configuration for the BPi-R2 which is a mediatek/mt7623 devboard which can be booted from SD Card or eMMC. Auto detect the boot device and add environment accordingly. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-envtools: move mediatek to mediatek_mt7622Daniel Golle2021-07-201-0/+0
| | | | | | | | All mediatek boards having fw_env accessible through uboot-envtools belong to be mt7622 subtarget. Move the file, as subtarget-specific files are supported for a while now. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* uboot-mediatek: rework support for the BPi-R2Daniel Golle2021-07-202-13/+301
| | | | | | | | | * use built-in default environment instead of file in bootfs * get rid of bootfs alltogether and use uImage.FIT * auto-detect boot device like original script did * add support for factory button Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ath10k: fix compilation error with CONFIG_OF not availableAnsuel Smith2021-07-192-2/+6
| | | | | | | | of_platform_device_create require CONFIG_OF selected. Add an ifdef and register to the of platform only if of is available. Fixes: 985954ccbd11 ("kernel: add ath10k support for of_get_mac_address") Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* kernel: add ath10k support for of_get_mac_addressAnsuel Smith2021-07-192-0/+118
| | | | | | | ath10k doesn't currently support the standard function to get mac-address from the dts. Add this for both ath10k and ath10k-ct Signed-off-by: Ansuel Smith <ansuelsmth@gmail.com>
* dnsmasq: add /tmp/hosts/ to jail_mountNick Hainke2021-07-191-1/+1
| | | | | | | Programs like the olsr-name-plugin write hostname files to "/tmp/hosts/". If you don't add this to the jail_mount, dnsmasq can't read it anymore. Signed-off-by: Nick Hainke <vincent@systemli.org>
* procd: update to git HEADDaniel Golle2021-07-181-3/+3
| | | | | | 9bd1b7f jail: refactor directory handling for rootfs and overlaydir Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* odhcpd: fix invalid DHCPv6 ADVERTSIE with small configured leasetime (FS#3935)Hans Dedecker2021-07-181-3/+3
| | | | | | bc9d317 dhcpv6-ia: fix invalid preferred lifetime Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
* procd: update to git HEADDaniel Golle2021-07-171-3/+3
| | | | | | 0545905 jail: make use of realpath() for rootfs and overlaydir Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* mt76: update to the latest versionFelix Fietkau2021-07-151-3/+3
| | | | | | bbebea7d6dc6 Revert "mt76: fix mt76_rates for the multiple devices" Signed-off-by: Felix Fietkau <nbd@nbd.name>
* procd: update to git HEADDaniel Golle2021-07-152-4/+8
| | | | | | | | | | | 0ee73b2 uxc: implement support for rootfs overlay in containers b0a8ea1 jail: do not hack /etc/resolv.conf on container rootfs 92aba53 jail: increase max additional env records to 64 15997e6 jail: allow rootfs to be a symbolic link 0114c6f jail: open() extroot folder before mounting ed96eda uxc: check for required blockd mounts Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* fstools: update to git HEADDaniel Golle2021-07-151-3/+3
| | | | | | | 3386b6b blockd: fix trigger name cdc9939 blockd: move to its own POSIX process group Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* hostapd: add "force" parameter for channel switchFelix Fietkau2021-07-151-1/+21
| | | | | | | This will restart the interface in case the CSA fails and can be used to force the device on a DFS channel (including full CAC) Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mt76: update to the latest versionFelix Fietkau2021-07-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 624c681ef0c6 mt76: mt7921: enable VHT BFee capability a27dfcb63ccf mt76: connac: fix UC entry is being overwritten 6b691e62470e mt76: connac: add mt76_connac_power_save_sched in mt76_connac_pm_unref b14365bea586 mt76: mt7921: wake the device before dumping power table 82af16bddfc0 mt76: mt7921: make mt7921_set_channel static b24598b1c1a9 mt76: connac: add mt76_connac_mcu_get_nic_capability utility routine 5954e3381ff9 mt76: testmode: move chip-specific stats dump before common stats fd5b612f9aa4 mt76: mt7915: fix rx fcs error count in testmode d9d26a294f7b mt76: connac: fix the maximum interval schedule scan can support ed39c882f388 mt76: reduce rx buffer size to 2048 60f3d3adbba6 mt76: move mt76_get_next_pkt_id in mt76.h 67ed4d902c84 mt76: connac: check band caps in mt76_connac_mcu_set_rate_txpower 23c6ec49c000 mt76: make mt76_update_survey() per phy 5ca602fb9455 mt76: mt7915: introduce mt7915_mcu_set_txbf() c13df42282e9 mt76: mt7915: improve MU stability dee7dcddcaa0 mt76: use SPDX header file comment style 6fbd47153b3d mt76: mt7915: fix IEEE80211_HE_PHY_CAP7_MAX_NC for station mode 1b97dd1762ca mt76: mt7921: fix sta_state incorrect implementation 1b89053b5a6f mt76: mt7921: improve code readability for mt7921_update_txs 126649816785 mt76: mt7921: limit txpower according to userlevel power a5163ac09be2 mt76: mt7921: introduce dedicated control for deep_sleep e47c04db4d7e mt76: mt7921: fix kernel warning when reset on vif is not sta 063d3611662c mt76: mt7921: fix the coredump is being truncated 12bf28feba7c mt76: fix iv and CCMP header insertion 949327e76ee4 mt76: disable TWT capabilities for the moment 3530254c1bc9 mt76: mt7921: enable HE BFee capability 599e35f5d9b8 mt76: sdio: do not run mt76_txq_schedule directly 3b6d30c28946 mt76: mt7663s: rely on pm reference counting 529d55a79088 mt76: mt7663s: rely on mt76_connac_pm_ref/mt76_connac_pm_unref in tx path ef44ff116ee2 mt76: mt7663s: enable runtime-pm 3a71e71a555e mt76: mt7615: set macwork timeout according to runtime-pm 925d96e443a4 mt76: mt7921: allow chip reset during device restart 63b114d84361 mt76: mt76x0e: fix device hang during suspend/resume 7f5ea5e2fd10 mt7915: check return code of sysfs_create_link ca64a36908b7 mt76: fix mt76_rates for the multiple devices f517116bf14c mt76: add mt76_default_basic_rate more devices can rely on 6c70b0100513 mt76: mt7921: fix mgmt frame using unexpected bitrate c00a9a6b52af mt76: mt7915: fix mgmt frame using unexpected bitrate 0e4089949565 mt76: mt7921: fix endianness in mt7921_mcu_tx_done_event 55f314120ef2 mt76: mt7921: avoid unnecessary spin_lock/spin_unlock in mt7921_mcu_tx_done_event 541cd3276488 mt76: mt7915: fix endianness warning in mt7915_mac_add_txs_skb 817761e87c4f mt76: mt7921: fix endianness warning in mt7921_update_txs b8eca74bbd7b mt76: mt7615: fix endianness warning in mt7615_mac_write_txwi 5e5e07f0def3 mt76: mt7915: fix potential overflow of eeprom page index abda4cded420 mt76: mt7915: fix info leak in mt7915_mcu_set_pre_cal() 535899f81a46 mt76: mt7915: fix calling mt76_wcid_alloc with incorrect parameter adfa1b9a3ca0 mt76: connac: fix mt76_connac_gtk_rekey_tlv usage 2a65b105ea4a mt76: mt7921: enable aspm by default c57158c82804 mt76: fix build error implicit enumeration conversion 41f607cab83c mt76: mt7921: fix survey-dump reporting 25b4f885a937 mt76: mt76x02: fix endianness warnings in mt76x02_mac.c e63fadb87fe1 mt76: mt7915: report HE MU radiotap 135ef3e9827a mt76: mt7915: adapt new firmware to update BA winsize for Rx session 7118eacb7ce4 mt76: mt7921: add .set_sar_specs support f1f6569da408 mt76: mt7915: fix an off-by-one bound check f7da39467965 mt76 mt7915: take RCU read lock when calling ieee80211_bss_get_elem() 87af8e5c72b1 mt76: mt7915: cleanup -Wunused-but-set-variable 8e2d383fbd92 mt76: mt7915: report tx rate directly from tx status ddce30977591 mt76: mt7915: remove mt7915_sta_stats 4ccd42029519 mt76: mt7921: introduce testmode support Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport SAR power limit supportFelix Fietkau2021-07-143-7/+456
| | | | | | Needed for an upcoming mt76 update Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: merge a 4-addr client mode fixFelix Fietkau2021-07-141-0/+72
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: merge the virtual time based airtime schedulerFelix Fietkau2021-07-144-3/+1430
| | | | | | Improves airtime fairness, especially for devices with larger firmware buffers Signed-off-by: Felix Fietkau <nbd@nbd.name>
* netifd: update to the latest versionFelix Fietkau2021-07-141-3/+3
| | | | | | 7f24a063475e vlan: fix device vlan alias handling Signed-off-by: Felix Fietkau <nbd@nbd.name>
* fstools: update to git HEADDaniel Golle2021-07-142-3/+4
| | | | | | | | 4d4dcfb blockd: detect mountpoint of /dev/mapper/* 2f42515 block: resolve /dev/mapper/* name for /dev/dm-0 when hotplugging 39558a1 blockd: also send ubus notification on mount hotplug Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* rpcd: update to latest Git HEADJo-Philipp Wich2021-07-131-3/+3
| | | | | | 1fa3576 session: unload rpcd configuration before checking login Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* netifd: update to the latest versionFelix Fietkau2021-07-131-3/+3
| | | | | | | | | | | | | | | f12b073c0cc3 wireless: add some comments to functions b0d090688302 bridge: fix setting pvid for updated vlans ff3764ce28e0 device: move hotplug handling logic from system-linux.c to device.c 16bff892f415 ubus: add a dummy mode ubus call to simulate hotplug events 7f30b02013f2 examples: make dummy wireless vif names shorter 013a1171e9b0 device: do not treat devices with non-digit characters after . as vlan devices f037b082923a wireless: handle WDS per-sta devices db0fa24e1c17 bridge: fix enabling hotplug-added VLANs on the bridge port 4e92ea74273f bridge: bring up pre-existing vlans on hotplug as well 1f283c654aeb bridge: fix hotplug vlan overwrite on big-endian systems Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: fix uninitialized stack variable on CSAFelix Fietkau2021-07-121-0/+25
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: initialize ht/vht/he mode on channel switch by defaultFelix Fietkau2021-07-121-2/+24
| | | | | | Use the current mode, but allow overwriting via ubus command parameters Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: add support for enabling HE on channel switchFelix Fietkau2021-07-121-0/+3
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* hostapd: make it possible to update station airtime weights via ubusFelix Fietkau2021-07-122-0/+99
| | | | | | This allows dynamic tuning based on other runtime information Signed-off-by: Felix Fietkau <nbd@nbd.name>
* uboot-mediatek: several fixes for MT7622Daniel Golle2021-07-114-94/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | * ! Behavior change ! Old behavior: If the Reset button is held down during power-on do factory reset and try booting recovery from TFTP forever. If valid recovery is received via TFTP, write it to flash and boot. New behavior: If the Reset button is held down during power-on do factory reset, then try TFTP *once*, then try booting on-flash recovery, then keep trying via TFTP forever until a valid image is received. Only if there is no bootable recovery stored on flash, store the downloaded recovery. Then boot it. * Set loadaddr to 0x48000000 in order to allow booting images larger than ~47MB (reported by Oskari Lemmelä). Setting loadaddr to 0x48000000 gives us 384MB on devices with 512MB RAM, which should be more than enough as a maximum size for uImage.FIT to be loaded. * Widely unify device-specific default environment in preparation to auto-generate it from parameters. * backport upstream commit fixing MBR/DOS partitioning Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* ramips: add support for Linksys EA8100 v2Tee Hao Wei2021-07-111-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifications: - SoC: MT7621AT - RAM: 256MB - Flash: 128MB NAND - Ethernet: 5 Gigabit ports - WiFi: 2.4G/5G MT7615N - USB: 1 USB 3.0, 1 USB 2.0 This device is very similar to the EA7300 v1/v2, EA7500 v2, and EA8100 v1. Installation: Upload the generated factory image through the factory web interface. (following part taken from EA7300 v2 commit message:) This might fail due to the A/B nature of this device. When flashing, OEM firmware writes over the non-booted partition. If booted from 'A', flashing over 'B' won't work. To get around this, you should flash the OEM image over itself. This will then boot the router from 'B' and allow you to flash OpenWRT without problems. Reverting to factory firmware: Hard-reset the router three times to force it to boot from 'B.' This is where the stock firmware resides. To remove any traces of OpenWRT from your router simply flash the OEM image at this point. With thanks to Tom Wizetek (@wizetek) for testing. Signed-off-by: Tee Hao Wei <angelsl@in04.sg>
* iwinfo: update to latest Git HEAD and move device info into -data packageJo-Philipp Wich2021-07-111-7/+17
| | | | | | | | | | a0a0e02 iwinfo: rename hardware.txt to devices.txt Also split common devices.txt (former hardware.txt) into a common libiwinfo-data package to allow different libiwinfo versions to coexist without file clashes. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* procd: update to git HEADDaniel Golle2021-07-101-3/+3
| | | | | | 2dcefbd jail: add support for cgroup devices as in OCI run-time spec Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* lua: make it easier to detect host-built LuaDaniel Golle2021-07-101-2/+6
| | | | | | Install pkg-config file also for host-build, clean up Lua symlinks. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
* hostapd: add HE flag to get_clientsDavid Bauer2021-07-061-0/+1
| | | | | | Expose the hostapd HE flag via ubus to indicate HE capable devices. Signed-off-by: David Bauer <mail@david-bauer.net>
* hostapd: remove unused mac_buff allocationMartin Weinelt2021-07-061-1/+0
| | | | Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de>
* hostapd: report bssid, ssid and channel over ubusMartin Weinelt2021-07-061-0/+38
| | | | | | | | | Imports a function from iw to convert frequencies to channel numbers. Co-authored-by: David Bauer <mail@david-bauer.net> Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de> [fix potential out of bounds read] Signed-off-by: David Bauer <mail@david-bauer.net>
* dnsmasq: use local option for local domain parameterKevin Darbyshire-Bryant2021-07-051-1/+1
| | | | | | | | | '--local' is a synonym for '--server' so let's use '--local' in the resultant config file for uci's 'local' instead of uci's local parameter being turned into '--server'. Slightly less confusion all round. Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* iwinfo: build with nl80211 backend only and make sharedJo-Philipp Wich2021-07-021-19/+5
| | | | | | | | | | | Drop support for building the obsolete broadcom-wl backend and always forcibly enable the nl82011 support. This allows us to make the package shared again since no target specific compilation is happening anymore. This will solve various repository coherency issues related to unavailable libiwinfo versions in the long run. Signed-off-by: Jo-Philipp Wich <jo@mein.io>
* treewide: unmark selected packages nonsharedPetr Štetiar2021-07-026-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts changes done in commit 72cc44958ef4 ("treewide: mark selected packages nonshared") as it removes the nonshared flag, but keeps the PKG_RELEASE as the PKG_RELEASE bump while adding nonshared flag was incorrect. Unmark uci, ubus, libubox, lua, libnl-tiny and libjson-c as nonshared packages as this fix attempt didn't worked out. Currently the imagebuilder is broken again: openwrt-imagebuilder-21.02.0-rc3-ipq40xx-generic.Linux-x86_64$ make image PROFILE=avm_fritzbox-7530 PACKAGES=luci-ssl-openssl ... Collected errors: * pkg_hash_check_unresolved: cannot find dependency libiwinfo20210430 for luci-mod-status * pkg_hash_fetch_best_installation_candidate: Packages for luci-mod-status found, but incompatible with the architectures configured * pkg_hash_check_unresolved: cannot find dependency libiwinfo20210430 for rpcd-mod-iwinfo * pkg_hash_fetch_best_installation_candidate: Packages for rpcd-mod-iwinfo found, but incompatible with the architectures configured * satisfy_dependencies_for: Cannot satisfy the following dependencies for luci-ssl-openssl: * libiwinfo20210430 * opkg_install_cmd: Cannot install package luci-ssl-openssl. Everything because iwinfo's ABI was changed two times since rc3 release: +IWINFO_ABI_VERSION:=20210430 +IWINFO_ABI_VERSION:=20210420 Since iwinfo is marked as nonshared, it wasn't built by phase2 builders, but luci-mod-status was already updated 2 times since rc3 and was thus rebuilt by phase2 builders: d1d452ed2fb3 luci-mod-status: don't set '-' hostname when creating static lease 95b3633055c1 luci-mod-status: switch to html table for wlan channel analysis So now luci-mod-status depends on libiwinfo20210430 but only libiwinfo20210106 can be downloaded. This is first part of the fix, in the upcoming commit Jo is going to remove nonshared flag from iwinfo package as well. References: https://lists.infradead.org/pipermail/openwrt-devel/2021-July/035736.html References: https://lists.infradead.org/pipermail/openwrt-devel/2021-July/035741.html Acked-by: Jo-Philipp Wich <jo@mein.io> Reported-by: Nick Hainke <vincent@systemli.org> Signed-off-by: Petr Štetiar <ynezz@true.cz>
* package/comgt: Handle bind/unbind eventsArjun AK2021-07-021-0/+2
| | | | | | | | | | | | | This script was expecting only add/remove events which has not been the case since Kernel 4.12 (which added bind/unbind). Bind events were getting treated as remove events which would cause hotplugged 3g modems to not work. More info: https://lkml.org/lkml/2018/12/23/128 https://github.com/systemd/systemd/issues/8221 Signed-off-by: Arjun AK <arjunak234@gmail.com>
* ubus: update to the latest versionFelix Fietkau2021-06-301-3/+3
| | | | | | 4fc532c8a55b ubusd: fix tx_queue linked list usage Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: backport fix for nl80211 control port tx (fixes FS#3857)Felix Fietkau2021-06-307-17/+133
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* mac80211: fix a regression in starting aggregation sessions on mesh interfacesFelix Fietkau2021-06-291-0/+112
| | | | Signed-off-by: Felix Fietkau <nbd@nbd.name>
* dnsmasq: distinct Ubus names for multiple instancesEtan Kissling2021-06-291-3/+29
| | | | | | | | | | | | | | | | | | | | | | | | Currently, when using multiple dnsmasq instances they are all assigned to the same Ubus instance name. This does not work, as only a single instance can register with Ubus at a time. In the log, this leads to `Cannot add object to UBus: Invalid argument` error messages. Furthermore, upstream 3c93e8eb41952a9c91699386132d6fe83050e9be changes behaviour so that instead of the log, dnsmasq exits at start instead. With this patch, all dnsmasq instances are assigned unique names so that they can register with Ubus concurrently. One of the enabled instances is always assigned the previous default name "dnsmasq" to avoid breaking backwards compatibility with other software relying on that default. Previously, a random instance got assigned that name (while the others produced error logs). Now, the first unnamed dnsmasq config section is assigned the default name. If there are no unnamed dnsmasq sections the first encountered named dnsmasq config section is assigned instead. A similar issue exists for Dbus and was similarly addressed. Signed-off-by: Etan Kissling <etan.kissling@gmail.com> [tweaked commit message] dnsmasq was not crashing it is exiting Signed-off-by: Kevin Darbyshire-Bryant <ldir@darbyshire-bryant.me.uk>
* base-files: wifi: tidy up the reconf codeBob Cantor2021-06-281-1/+2
| | | | | | | | | | | | commit 5edbd390d321532d9a697d6895a1a7c71c40bd5d rearranged the "wifi up" code. This commit tidies up the "wifi reconf" code so as to keep it aligned with the "wifi up" code. branches affected: trunk, 21.02 Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
* base-files: wifi: swap the order of some ubus callsBob Cantor2021-06-281-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | "/sbin/wifi up" makes three ubus calls: 1. ubus call network reload 2. ubus call network.wireless down 3. ubus call network.wireless up The first and third ubus calls call drv_mac80211_setup, while the second ubus call triggers wireless_device_setup_cancel, so the call sequence becomes, 1. drv_mac80211_setup 2. wireless_device_setup_cancel 3. drv_mac80211_setup This commit swaps the order of the first two ubus calls, 1. ubus call network.wireless down 2. ubus call network reload 3. ubus call network.wireless up Consequently drv_mac80211_setup is only called once, and two related bugs (#FS3784 and #FS3902) are no longer triggered by /sbin/wifi. branches affected: trunk, 21.02 Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
* mac80211: print an error if wifi teardown failsBob Cantor2021-06-281-0/+4
| | | | | | | | | drv_mac80211_teardown fails silently if the device to be torn down is not defined. This commit prints an error message. branches affected: trunk, 21.02 Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
* mac80211: always call wireless_set_data (FS#3784)Bob Cantor2021-06-281-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When wifi is turned off, drv_mac80211_teardown sometimes fails (silently) because the device to be torn down is not defined. This situation arises if drv_mac80211_setup was called twice when wifi was turned on. This commit ensures that the device to be torn down is always defined in drv_mac80211_teardown. Steps to reproduce: 1) Use /sbin/wifi to turn on wifi. uci set wireless.@wifi-iface[0].disabled=0 uci set wireless.@wifi-device[0].disabled=0 uci commit wifi 2) Use /sbin/wifi to turn off wifi. uci set wireless.@wifi-device[0].disabled=1 uci commit wifi 3) Observe that wifi is still up. branches affected: trunk, 21.02 Signed-off-by: Bob Cantor <coxede6557@w3boats.com>
* mac80211: fix no_reload logic (FS#3902)Bob Cantor2021-06-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If drv_mac80211_setup is called twice with the same wifi configuration, then the second call returns early with error HOSTAPD_START_FAILED. (wifi works nevertheless, despite the fact that setup is incomplete. But "ubus call network.wireless status" erroneously reports that radio0 is down.) The relevant part of drv_mac80211_setup is, if [ "$no_reload" != "0" ]; then add_ap=1 ubus wait_for hostapd local hostapd_res="$(ubus call hostapd config_add "{\"iface\":\"$primary_ap\", \"config\":\"${hostapd_conf_file}\"}")" ret="$?" [ "$ret" != 0 -o -z "$hostapd_res" ] && { wireless_setup_failed HOSTAPD_START_FAILED return } wireless_add_process "$(jsonfilter -s "$hostapd_res" -l 1 -e @.pid)" "/usr/sbin/hostapd" 1 1 fi This commit sets no_reload = 0 during the second call of drv_mac80211_setup. It is perhaps worth providing a way to reproduce the situation where drv_mac80211_setup is called twice. When /sbin/wifi is used to turn on wifi, uci set wireless.@wifi-iface[0].disabled=0 uci set wireless.@wifi-device[0].disabled=0 uci commit wifi /sbin/wifi makes the following ubus calls, ubus call network reload ubus call network.wireless down ubus call network.wireless up The first and third ubus calls both call drv_mac80211_setup, while the second ubus call triggers wireless_device_setup_cancel. So the call sequence becomes, drv_mac80211_setup wireless_device_setup_cancel drv_mac80211_setup In contrast, when LuCI is used to turn on wifi only a single call is made to drv_mac80211_setup. branches affected: trunk, 21.02 Signed-off-by: Bob Cantor <coxede6557@w3boats.com>