* [Patch net] wl1251: add a missing spin_lock_init()
@ 2017-07-06 22:00 Cong Wang
2017-07-07 16:59 ` Pavel Machek
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Cong Wang @ 2017-07-06 22:00 UTC (permalink / raw)
To: netdev; +Cc: pavel, linux-wireless, Cong Wang, Kalle Valo
This fixes the following kernel warning:
[ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745
[ 5668.771850] lock: 0xce63ef20, .magic: 00000000, .owner: <none>/-1,
.owner_cpu: 0
[ 5668.772277] CPU: 0 PID: 9745 Comm: kworker/u2:3 Tainted: G W
4.12.0-03002-gec979a4-dirty #40
[ 5668.772796] Hardware name: Nokia RX-51 board
[ 5668.773071] Workqueue: phy1 wl1251_irq_work
[ 5668.773345] [<c010c9e4>] (unwind_backtrace) from [<c010a274>]
(show_stack+0x10/0x14)
[ 5668.773803] [<c010a274>] (show_stack) from [<c01545a4>]
(do_raw_spin_lock+0x6c/0xa0)
[ 5668.774230] [<c01545a4>] (do_raw_spin_lock) from [<c06ca578>]
(_raw_spin_lock_irqsave+0x10/0x18)
[ 5668.774658] [<c06ca578>] (_raw_spin_lock_irqsave) from [<c048c010>]
(wl1251_op_tx+0x38/0x5c)
[ 5668.775115] [<c048c010>] (wl1251_op_tx) from [<c06a12e8>]
(ieee80211_tx_frags+0x188/0x1c0)
[ 5668.775543] [<c06a12e8>] (ieee80211_tx_frags) from [<c06a138c>]
(__ieee80211_tx+0x6c/0x130)
[ 5668.775970] [<c06a138c>] (__ieee80211_tx) from [<c06a3dbc>]
(ieee80211_tx+0xdc/0x104)
[ 5668.776367] [<c06a3dbc>] (ieee80211_tx) from [<c06a4af0>]
(__ieee80211_subif_start_xmit+0x454/0x8c8)
[ 5668.776824] [<c06a4af0>] (__ieee80211_subif_start_xmit) from
[<c06a4f94>] (ieee80211_subif_start_xmit+0x30/0x2fc)
[ 5668.777343] [<c06a4f94>] (ieee80211_subif_start_xmit) from
[<c0578848>] (dev_hard_start_xmit+0x80/0x118)
...
by adding the missing spin_lock_init().
Reported-by: Pavel Machek <pavel@ucw.cz>
Cc: Kalle Valo <kvalo@codeaurora.org>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
---
drivers/net/wireless/ti/wl1251/main.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/net/wireless/ti/wl1251/main.c b/drivers/net/wireless/ti/wl1251/main.c
index bbf7604..1c539c8 100644
--- a/drivers/net/wireless/ti/wl1251/main.c
+++ b/drivers/net/wireless/ti/wl1251/main.c
@@ -1571,6 +1571,7 @@ struct ieee80211_hw *wl1251_alloc_hw(void)
wl->state = WL1251_STATE_OFF;
mutex_init(&wl->mutex);
+ spin_lock_init(&wl->wl_lock);
wl->tx_mgmt_frm_rate = DEFAULT_HW_GEN_TX_RATE;
wl->tx_mgmt_frm_mod = DEFAULT_HW_GEN_MODULATION_TYPE;
--
2.5.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [Patch net] wl1251: add a missing spin_lock_init()
2017-07-06 22:00 [Patch net] wl1251: add a missing spin_lock_init() Cong Wang
@ 2017-07-07 16:59 ` Pavel Machek
2017-07-21 7:54 ` Pavel Machek
2017-07-27 10:59 ` [net] " Kalle Valo
2 siblings, 0 replies; 5+ messages in thread
From: Pavel Machek @ 2017-07-07 16:59 UTC (permalink / raw)
To: Cong Wang; +Cc: netdev, linux-wireless, Kalle Valo
[-- Attachment #1: Type: text/plain, Size: 1159 bytes --]
Hi!
> This fixes the following kernel warning:
>
> [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745
...
> [ 5668.777343] [<c06a4f94>] (ieee80211_subif_start_xmit) from
> [<c0578848>] (dev_hard_start_xmit+0x80/0x118)
> ...
>
> by adding the missing spin_lock_init().
>
> Reported-by: Pavel Machek <pavel@ucw.cz>
> Cc: Kalle Valo <kvalo@codeaurora.org>
> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Looks very reasonable.
Acked-by: Pavel Machek <pavel@ucw.cz>
I tried testing it, and resulting kernel works, but even going back to
broken kernel I can't reproduce the problem on demand...
Best regards,
Pavel
> +++ b/drivers/net/wireless/ti/wl1251/main.c
> @@ -1571,6 +1571,7 @@ struct ieee80211_hw *wl1251_alloc_hw(void)
>
> wl->state = WL1251_STATE_OFF;
> mutex_init(&wl->mutex);
> + spin_lock_init(&wl->wl_lock);
>
> wl->tx_mgmt_frm_rate = DEFAULT_HW_GEN_TX_RATE;
> wl->tx_mgmt_frm_mod = DEFAULT_HW_GEN_MODULATION_TYPE;
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Patch net] wl1251: add a missing spin_lock_init()
2017-07-06 22:00 [Patch net] wl1251: add a missing spin_lock_init() Cong Wang
2017-07-07 16:59 ` Pavel Machek
@ 2017-07-21 7:54 ` Pavel Machek
2017-07-21 8:00 ` Kalle Valo
2017-07-27 10:59 ` [net] " Kalle Valo
2 siblings, 1 reply; 5+ messages in thread
From: Pavel Machek @ 2017-07-21 7:54 UTC (permalink / raw)
To: Cong Wang, davem, Andrew Morton; +Cc: netdev, linux-wireless, Kalle Valo
[-- Attachment #1: Type: text/plain, Size: 1294 bytes --]
Hi!
On Thu 2017-07-06 15:00:37, Cong Wang wrote:
> This fixes the following kernel warning:
>
> [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745
> [ 5668.771850] lock: 0xce63ef20, .magic: 00000000, .owner: <none>/-1,
> .owner_cpu: 0
...
> by adding the missing spin_lock_init().
>
> Reported-by: Pavel Machek <pavel@ucw.cz>
> Cc: Kalle Valo <kvalo@codeaurora.org>
> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Ping? This is pretty trivial bugfix for an ugly problem. It would be
nice to take it in.
> drivers/net/wireless/ti/wl1251/main.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/net/wireless/ti/wl1251/main.c b/drivers/net/wireless/ti/wl1251/main.c
> index bbf7604..1c539c8 100644
> --- a/drivers/net/wireless/ti/wl1251/main.c
> +++ b/drivers/net/wireless/ti/wl1251/main.c
> @@ -1571,6 +1571,7 @@ struct ieee80211_hw *wl1251_alloc_hw(void)
>
> wl->state = WL1251_STATE_OFF;
> mutex_init(&wl->mutex);
> + spin_lock_init(&wl->wl_lock);
>
> wl->tx_mgmt_frm_rate = DEFAULT_HW_GEN_TX_RATE;
> wl->tx_mgmt_frm_mod = DEFAULT_HW_GEN_MODULATION_TYPE;
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Patch net] wl1251: add a missing spin_lock_init()
2017-07-21 7:54 ` Pavel Machek
@ 2017-07-21 8:00 ` Kalle Valo
0 siblings, 0 replies; 5+ messages in thread
From: Kalle Valo @ 2017-07-21 8:00 UTC (permalink / raw)
To: Pavel Machek; +Cc: Cong Wang, davem, Andrew Morton, netdev, linux-wireless
Pavel Machek <pavel@ucw.cz> writes:
> On Thu 2017-07-06 15:00:37, Cong Wang wrote:
>> This fixes the following kernel warning:
>>
>> [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745
>> [ 5668.771850] lock: 0xce63ef20, .magic: 00000000, .owner: <none>/-1,
>> .owner_cpu: 0
> ...
>> by adding the missing spin_lock_init().
>>
>> Reported-by: Pavel Machek <pavel@ucw.cz>
>> Cc: Kalle Valo <kvalo@codeaurora.org>
>> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
>
>
> Ping? This is pretty trivial bugfix for an ugly problem. It would be
> nice to take it in.
I was on vacation, catching up now but I have 300+ patches in patchwork
so it will take a while before I have gone through all of them.
--
Kalle Valo
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [net] wl1251: add a missing spin_lock_init()
2017-07-06 22:00 [Patch net] wl1251: add a missing spin_lock_init() Cong Wang
2017-07-07 16:59 ` Pavel Machek
2017-07-21 7:54 ` Pavel Machek
@ 2017-07-27 10:59 ` Kalle Valo
2 siblings, 0 replies; 5+ messages in thread
From: Kalle Valo @ 2017-07-27 10:59 UTC (permalink / raw)
To: Cong Wang; +Cc: netdev, pavel, linux-wireless, Cong Wang
Cong Wang <xiyou.wangcong@gmail.com> wrote:
> This fixes the following kernel warning:
>
> [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745
> [ 5668.771850] lock: 0xce63ef20, .magic: 00000000, .owner: <none>/-1,
> .owner_cpu: 0
> [ 5668.772277] CPU: 0 PID: 9745 Comm: kworker/u2:3 Tainted: G W
> 4.12.0-03002-gec979a4-dirty #40
> [ 5668.772796] Hardware name: Nokia RX-51 board
> [ 5668.773071] Workqueue: phy1 wl1251_irq_work
> [ 5668.773345] [<c010c9e4>] (unwind_backtrace) from [<c010a274>]
> (show_stack+0x10/0x14)
> [ 5668.773803] [<c010a274>] (show_stack) from [<c01545a4>]
> (do_raw_spin_lock+0x6c/0xa0)
> [ 5668.774230] [<c01545a4>] (do_raw_spin_lock) from [<c06ca578>]
> (_raw_spin_lock_irqsave+0x10/0x18)
> [ 5668.774658] [<c06ca578>] (_raw_spin_lock_irqsave) from [<c048c010>]
> (wl1251_op_tx+0x38/0x5c)
> [ 5668.775115] [<c048c010>] (wl1251_op_tx) from [<c06a12e8>]
> (ieee80211_tx_frags+0x188/0x1c0)
> [ 5668.775543] [<c06a12e8>] (ieee80211_tx_frags) from [<c06a138c>]
> (__ieee80211_tx+0x6c/0x130)
> [ 5668.775970] [<c06a138c>] (__ieee80211_tx) from [<c06a3dbc>]
> (ieee80211_tx+0xdc/0x104)
> [ 5668.776367] [<c06a3dbc>] (ieee80211_tx) from [<c06a4af0>]
> (__ieee80211_subif_start_xmit+0x454/0x8c8)
> [ 5668.776824] [<c06a4af0>] (__ieee80211_subif_start_xmit) from
> [<c06a4f94>] (ieee80211_subif_start_xmit+0x30/0x2fc)
> [ 5668.777343] [<c06a4f94>] (ieee80211_subif_start_xmit) from
> [<c0578848>] (dev_hard_start_xmit+0x80/0x118)
> ...
>
> by adding the missing spin_lock_init().
>
> Reported-by: Pavel Machek <pavel@ucw.cz>
> Cc: Kalle Valo <kvalo@codeaurora.org>
> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
> Acked-by: Pavel Machek <pavel@ucw.cz>
Patch applied to wireless-drivers-next.git, thanks.
6e9aae179f29 wl1251: add a missing spin_lock_init()
--
https://patchwork.kernel.org/patch/9829083/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-07-27 10:59 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-06 22:00 [Patch net] wl1251: add a missing spin_lock_init() Cong Wang
2017-07-07 16:59 ` Pavel Machek
2017-07-21 7:54 ` Pavel Machek
2017-07-21 8:00 ` Kalle Valo
2017-07-27 10:59 ` [net] " Kalle Valo
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).