projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
53b1a59
)
MLK-11065-6 bcmdhd: fix warning when rmmod module
author
Dong Aisheng
<b29396@freescale.com>
Fri, 3 Apr 2015 09:15:13 +0000
(17:15 +0800)
committer
Nitin Garg
<nitin.garg@nxp.com>
Mon, 19 Mar 2018 19:49:01 +0000
(14:49 -0500)
root@imx7d_all:~# rmmod bcmdhd
dhd_prot_ioctl : bus is down. we have nothing to do
dhd_wlfc_deinit():3268, ampdu_hostreorder get failed Err = -1
dhd_prot_ioctl : bus is down. we have nothing to do
dhd_wlfc_deinit():3291 failed to enable/disable bdcv2 tlv signaling Err = -1
dhd_detach(): thread:dhd_watchdog_thread:2d4 terminated OK
dhd_dpc_thread: Unexpected up_cnt 0
dhd_detach(): thread:dhd_dpc:2d5 terminated OK
CFG80211-ERROR) wl_event_handler : was terminated
wl_destroy_event_handler(): thread:wl_event_handler:2d3 terminated OK
------------[ cut here ]------------
Kernel BUG at
800d12b0
[verbose debug info unavailable]
Internal error: Oops - BUG: 0 [#1] PREEMPT SMP ARM
Modules linked in: bcmdhd(-) evbug
CPU: 0 PID: 755 Comm: rmmod Not tainted 3.14.28-7D_alpha #1
task:
a8a31680
ti:
a841a000
task.ti:
a841a000
PC is at kfree+0x17c/0x180
LR is at wiphy_unregister+0x15c/0x1cc
pc : [<
800d12b0
>] lr : [<
806b0cf8
>] psr:
40070013
sp :
a841be28
ip :
00000000
fp :
a901396c
r10:
7f078dc0
r9 :
a9240120
r8 :
a9240380
r7 :
a9240000
r6 :
a9010000
r5 :
ab73af20
r4 :
a9240120
r3 :
00000000
r2 :
ab75a000
r1 :
00000000
r0 :
7f079220
Flags: nZcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
Control:
10c53c7d
Table:
a863406a
DAC:
00000015
Process rmmod (pid: 755, stack limit = 0xa841a238)
Stack: (0xa841be28 to 0xa841c000)
be20:
7f079220
a9240120
00000000
a9010000
a9240000
a9240380
be40:
a9240120
7f078dc0
a901396c
806b0cf8
00000000
7f078dc0
a901396c
805962b4
be60:
7f07cea0
a8433800
a8ae3840
a9240380
a9010000
a9013000
a9240380
7f02b088
be80:
00000000
00000000
a9010000
a9013000
a9010000
7f07cea0
7f078dc0
7f00f00c
bea0:
00000001
a850f800
7f078dc0
a865b3c0
00000081
8000e5e4
a841a000
00000000
bec0:
00000000
7f05588c
7f078dc0
a850f800
00000000
7f056080
7f056044
a865b180
bee0:
a865b340
7f048944
a8fe7800
a865b3c0
7f07acd4
7f04a37c
7f04a330
a8487408
bf00:
a8487400
804baf10
a8487408
7f07acd4
a848743c
803476b4
7f07acd4
a8487408
bf20:
7f07acd4
80347dc4
7f07acd4
7f07ad38
00000800
803473b4
00000000
7f05f158
bf40:
7f05f12c
80083be8
00000000
00000000
7f07ad38
00000800
a841bf4c
646d6362
bf60:
00006468
00000000
8108f030
a8a31680
a8a31a30
00000000
00000000
8004605c
bf80:
a89c4d80
a841a018
8000e5e4
a841bfb0
a841a000
00011330
00000000
7ecc5e1c
bfa0:
00000002
8000e460
00000000
7ecc5e1c
01b05d3c
00000800
76f26104
00002002
bfc0:
00000000
7ecc5e1c
00000002
00000081
7ecc5f0a
00000001
01b05d08
00000000
bfe0:
76eebeb0
7ecc5bfc
00016e3c
76eebebc
60080010
01b05d3c
efdff749
faff7bf3
[<
800d12b0
>] (kfree) from [<
806b0cf8
>] (wiphy_unregister+0x15c/0x1cc)
[<
806b0cf8
>] (wiphy_unregister) from [<
7f02b088
>] (wl_free_wdev+0x2c/0xf8 [bcmdhd])
[<
7f02b088
>] (wl_free_wdev [bcmdhd]) from [<
7f00f00c
>] (dhd_detach+0x274/0x430 [bcmdhd])
[<
7f00f00c
>] (dhd_detach [bcmdhd]) from [<
7f05588c
>] (dhdsdio_release+0x40/0x1cc [bcmdhd])
[<
7f05588c
>] (dhdsdio_release [bcmdhd]) from [<
7f056080
>] (dhdsdio_disconnect+0x3c/0xa0 [bcmdhd])
[<
7f056080
>] (dhdsdio_disconnect [bcmdhd]) from [<
7f048944
>] (bcmsdh_remove+0x3c/0x60 [bcmdhd])
[<
7f048944
>] (bcmsdh_remove [bcmdhd]) from [<
7f04a37c
>] (bcmsdh_sdmmc_remove+0x4c/0x64 [bcmdhd])
[<
7f04a37c
>] (bcmsdh_sdmmc_remove [bcmdhd]) from [<
804baf10
>] (sdio_bus_remove+0x30/0xf8)
[<
804baf10
>] (sdio_bus_remove) from [<
803476b4
>] (__device_release_driver+0x70/0xcc)
[<
803476b4
>] (__device_release_driver) from [<
80347dc4
>] (driver_detach+0xac/0xb0)
[<
80347dc4
>] (driver_detach) from [<
803473b4
>] (bus_remove_driver+0x4c/0xa0)
[<
803473b4
>] (bus_remove_driver) from [<
7f05f158
>] (dhd_module_cleanup+0x2c/0x3c [bcmdhd])
[<
7f05f158
>] (dhd_module_cleanup [bcmdhd]) from [<
80083be8
>] (SyS_delete_module+0x11c/0x17c)
[<
80083be8
>] (SyS_delete_module) from [<
8000e460
>] (ret_fast_syscall+0x0/0x30)
Code:
e1a01005
e1a02006
e8bd4ff8
eafffef1
(
e7f001f2
)
---[ end trace
ca749705cd612037
]---
Segmentation fault
Signed-off-by: Dong Aisheng <b29396@freescale.com>
(cherry picked from commit
8d019afe680fd7f20e42159daf2da7d9bfc94577
)
drivers/net/wireless/bcmdhd/wl_cfg80211.c
patch
|
blob
|
history
diff --git
a/drivers/net/wireless/bcmdhd/wl_cfg80211.c
b/drivers/net/wireless/bcmdhd/wl_cfg80211.c
index
3fec4c8
..
700ea52
100644
(file)
--- a/
drivers/net/wireless/bcmdhd/wl_cfg80211.c
+++ b/
drivers/net/wireless/bcmdhd/wl_cfg80211.c
@@
-7384,6
+7384,9
@@
static void wl_free_wdev(struct bcm_cfg80211 *cfg)
}
wiphy = wdev->wiphy;
+ wdev->wiphy->wowlan = NULL;
+ wdev->wiphy->wowlan_config = NULL;
+
#if (LINUX_VERSION_CODE > KERNEL_VERSION(3, 13, 0)) || defined(WL_VENDOR_EXT_SUPPORT)
wl_cfgvendor_detach(wdev->wiphy);
#endif /* if (LINUX_VERSION_CODE > KERNEL_VERSION(3, 13, 0)) || defined(WL_VENDOR_EXT_SUPPORT) */