[openwrt/openwrt] mac80211: fix netns crash

LEDE Commits lede-commits at lists.infradead.org
Thu Nov 20 17:19:16 PST 2025


hauke pushed a commit to openwrt/openwrt.git, branch main:
https://git.openwrt.org/7f5c7b862676fb212f026e1d9be17bef2d9b977b

commit 7f5c7b862676fb212f026e1d9be17bef2d9b977b
Author: Janusz Dziedzic <janusz.dziedzic at gmail.com>
AuthorDate: Mon Nov 17 11:42:30 2025 +0000

    mac80211: fix netns crash
    
    [  201.286070] CPU: 0 UID: 0 PID: 34 Comm: kworker/u8:1 Tainted: G S         O       6.12.51 #0
    [  201.294509] Tainted: [S]=CPU_OUT_OF_SPEC, [O]=OOT_MODULE
    [  201.299812] Hardware name: Bananapi BPI-R64 (DT)
    [  201.304422] Workqueue: netns cleanup_net
    [  201.308347] pstate: 60400005 (nZCv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    [  201.315304] pc : cfg80211_switch_netns+0x270/0x2d0 [cfg80211]
    [  201.321086] lr : cfg80211_switch_netns+0x26c/0x2d0 [cfg80211]
    [  201.326846] sp : ffffffc081143ca0
    [  201.330153] x29: ffffffc081143ca0 x28: 61c8864680b583eb x27: 0000000000000000
    [  201.337287] x26: ffffffc080c46000 x25: ffffff8000d28800 x24: ffffffc081143d80
    [  201.344421] x23: ffffff800834e360 x22: ffffffc080d6b280 x21: ffffffc07904aeb8
    [  201.351554] x20: ffffff800834c200 x19: ffffff8005e90000 x18: 0000000000000000
    [  201.358688] x17: 0000000000000000 x16: 000000000000001d x15: ffffffc081143cf8
    [  201.365821] x14: ffffff8005703600 x13: 00000000000003bb x12: 0000000000000000
    [  201.372955] x11: 00000000000000c0 x10: 0000000000000000 x9 : ffffffc081143bd0
    [  201.380088] x8 : 0000000000000000 x7 : 7f7f7f7f7f7f7f7f x6 : 1f1f1f1f1f1f6348
    [  201.387222] x5 : 0000000000000004 x4 : ffffff8000ce8000 x3 : 0000000000000000
    [  201.394355] x2 : 0000000000000000 x1 : ffffff8005e90800 x0 : 00000000ffffffea
    [  201.401489] Call trace:
    [  201.403926]  cfg80211_switch_netns+0x270/0x2d0 [cfg80211]
    [  201.409340]  ops_exit_list+0x40/0x80
    [  201.412910]  cleanup_net+0x344/0x558
    [  201.416480]  process_one_work+0x174/0x300
    [  201.420489]  worker_thread+0x278/0x430
    [  201.424234]  kthread+0xd8/0xdc
    [  201.427283]  ret_from_fork+0x10/0x20
    
    Fixes: e005cdea1028 ("mac80211: update to version 6.16")
    Signed-off-by: Janusz Dziedzic <janusz.dziedzic at gmail.com>
    Link: https://github.com/openwrt/openwrt/pull/20829
    Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
---
 .../mac80211/patches/build/210-wireless_netns_local_backport.patch   | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/package/kernel/mac80211/patches/build/210-wireless_netns_local_backport.patch b/package/kernel/mac80211/patches/build/210-wireless_netns_local_backport.patch
index 9e027fecb6..af51220c47 100644
--- a/package/kernel/mac80211/patches/build/210-wireless_netns_local_backport.patch
+++ b/package/kernel/mac80211/patches/build/210-wireless_netns_local_backport.patch
@@ -4,11 +4,10 @@
  	list_for_each_entry(wdev, &rdev->wiphy.wdev_list, list) {
  		if (!wdev->netdev)
  			continue;
--		wdev->netdev->netns_immutable = false;
 +#if LINUX_VERSION_IS_GEQ(6,15,0)
-+		wdev->netdev->netns_immutable = true;
+ 		wdev->netdev->netns_immutable = false;
 +#elif LINUX_VERSION_IS_GEQ(6,12,0)
-+		wdev->netdev->netns_local = true;
++		wdev->netdev->netns_local = false;
 +#endif
  		err = dev_change_net_namespace(wdev->netdev, net, "wlan%d");
  		if (err)




More information about the lede-commits mailing list