netifd issue

Felix Fietkau nbd at nbd.name
Fri Nov 10 04:59:15 PST 2023


On 09.11.23 22:31, Hannu Nyman wrote:
> e9hack kirjoitti 9.11.2023 klo 17.32:
>> I face a strange behaviour since commit 
>> 516ab774cc16d4b04b3b17a067cbf2649f1adaeb (system-linux: fix race condition 
>> on bringing up wireless devices). After a reboot or a full restart of 
>> hostapd via 'wifi down; sleep 30; killall hostapd; sleep 5; wifi', only the 
>> first of 3 5G AP's is join to the configured bridge. The two faulty AP's 
>> are up and connecting is possible, but there is no real network connection. 
>> If I change one parameter of the faulty AP's in the config file and do a 
>> 'wifi reload', than the 2 AP's are join to the bridges.
>>
>> ...
>>
>> If I change the sequence of the 5G AP's in the config file, the behaviour 
>> after reboot doesn't change. Only phy1-ap0 does join to the bridge, either 
>> to br-lan or to br-tor. The previous netifd commit 
>> 40ed7363caf2b22b6e29ed9d9948189c2bc4c8f3 (device: fix build error on 32 bit 
>> systems) doesn't have this issue.
> 
> 
> I see the same error.
> Some APs do not initially join the bridge, but after making a small pointless
> edit to the AP's config in /etc/config/wireless and reloading wifi, the AP
> then joins the bridge.
> 
> 
>    OpenWrt SNAPSHOT, r24331-168beef1dd
>    -----------------------------------------------------
> root at router4:~# brctl show
> bridge name     bridge id               STP enabled     interfaces
> br-lan          7fff.c4411ef8a51f       no              lan4
>                                                           lan2
>                                                           hn5wpa3
>                                                           lan3
>                                                           lan1
> root at router4:~# nano /etc/config/wireless
> root at router4:~# wifi reload
> root at router4:~# brctl show
> bridge name     bridge id               STP enabled     interfaces
> br-lan          7fff.c4411ef8a51f       no              lan4
>                                                           hn5wpa2r
>                                                           lan2
>                                                           hn5wpa3
>                                                           lan3
>                                                           lan1

I think I found the cause of this regression while looking at the code 
again. It seems that the hotplug-added devices are removed too early 
based on DEV_EVENT_REMOVE events.
Please try this fix: https://nbd.name/p/2791d8d4

Thanks,

- Felix




More information about the openwrt-devel mailing list