Re: [net] wl1251: add a missing spin_lock_init()
Cong Wangwrote: > This fixes the following kernel warning: > > [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745 > [ 5668.771850] lock: 0xce63ef20, .magic: , .owner: /-1, > .owner_cpu: 0 > [ 5668.772277] CPU: 0 PID: 9745 Comm: kworker/u2:3 Tainted: GW > 4.12.0-03002-gec979a4-dirty #40 > [ 5668.772796] Hardware name: Nokia RX-51 board > [ 5668.773071] Workqueue: phy1 wl1251_irq_work > [ 5668.773345] [] (unwind_backtrace) from [] > (show_stack+0x10/0x14) > [ 5668.773803] [] (show_stack) from [] > (do_raw_spin_lock+0x6c/0xa0) > [ 5668.774230] [] (do_raw_spin_lock) from [] > (_raw_spin_lock_irqsave+0x10/0x18) > [ 5668.774658] [] (_raw_spin_lock_irqsave) from [] > (wl1251_op_tx+0x38/0x5c) > [ 5668.775115] [] (wl1251_op_tx) from [] > (ieee80211_tx_frags+0x188/0x1c0) > [ 5668.775543] [] (ieee80211_tx_frags) from [] > (__ieee80211_tx+0x6c/0x130) > [ 5668.775970] [] (__ieee80211_tx) from [] > (ieee80211_tx+0xdc/0x104) > [ 5668.776367] [] (ieee80211_tx) from [] > (__ieee80211_subif_start_xmit+0x454/0x8c8) > [ 5668.776824] [] (__ieee80211_subif_start_xmit) from > [] (ieee80211_subif_start_xmit+0x30/0x2fc) > [ 5668.777343] [] (ieee80211_subif_start_xmit) from > [] (dev_hard_start_xmit+0x80/0x118) > ... > > by adding the missing spin_lock_init(). > > Reported-by: Pavel Machek > Cc: Kalle Valo > Signed-off-by: Cong Wang > Acked-by: Pavel Machek 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
Re: [Patch net] wl1251: add a missing spin_lock_init()
Pavel Machekwrites: > 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: , .owner: /-1, >> .owner_cpu: 0 > ... >> by adding the missing spin_lock_init(). >> >> Reported-by: Pavel Machek >> Cc: Kalle Valo >> Signed-off-by: Cong Wang > > > 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
Re: [Patch net] wl1251: add a missing spin_lock_init()
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: , .owner: /-1, > .owner_cpu: 0 ... > by adding the missing spin_lock_init(). > > Reported-by: Pavel Machek> Cc: Kalle Valo > Signed-off-by: Cong Wang 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(>mutex); > + spin_lock_init(>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 signature.asc Description: Digital signature
Re: [Patch net] wl1251: add a missing spin_lock_init()
Hi! > This fixes the following kernel warning: > > [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745 ... > [ 5668.777343] [] (ieee80211_subif_start_xmit) from > [] (dev_hard_start_xmit+0x80/0x118) > ... > > by adding the missing spin_lock_init(). > > Reported-by: Pavel Machek> Cc: Kalle Valo > Signed-off-by: Cong Wang Looks very reasonable. Acked-by: Pavel Machek 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(>mutex); > + spin_lock_init(>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 signature.asc Description: Digital signature
[Patch net] wl1251: add a missing spin_lock_init()
This fixes the following kernel warning: [ 5668.771453] BUG: spinlock bad magic on CPU#0, kworker/u2:3/9745 [ 5668.771850] lock: 0xce63ef20, .magic: , .owner: /-1, .owner_cpu: 0 [ 5668.772277] CPU: 0 PID: 9745 Comm: kworker/u2:3 Tainted: GW 4.12.0-03002-gec979a4-dirty #40 [ 5668.772796] Hardware name: Nokia RX-51 board [ 5668.773071] Workqueue: phy1 wl1251_irq_work [ 5668.773345] [] (unwind_backtrace) from [] (show_stack+0x10/0x14) [ 5668.773803] [] (show_stack) from [] (do_raw_spin_lock+0x6c/0xa0) [ 5668.774230] [] (do_raw_spin_lock) from [] (_raw_spin_lock_irqsave+0x10/0x18) [ 5668.774658] [] (_raw_spin_lock_irqsave) from [] (wl1251_op_tx+0x38/0x5c) [ 5668.775115] [] (wl1251_op_tx) from [] (ieee80211_tx_frags+0x188/0x1c0) [ 5668.775543] [] (ieee80211_tx_frags) from [] (__ieee80211_tx+0x6c/0x130) [ 5668.775970] [] (__ieee80211_tx) from [] (ieee80211_tx+0xdc/0x104) [ 5668.776367] [] (ieee80211_tx) from [] (__ieee80211_subif_start_xmit+0x454/0x8c8) [ 5668.776824] [] (__ieee80211_subif_start_xmit) from [] (ieee80211_subif_start_xmit+0x30/0x2fc) [ 5668.777343] [] (ieee80211_subif_start_xmit) from [] (dev_hard_start_xmit+0x80/0x118) ... by adding the missing spin_lock_init(). Reported-by: Pavel MachekCc: Kalle Valo Signed-off-by: Cong Wang --- 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(>mutex); + spin_lock_init(>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