Re: [PATCH] ath5k : ath5k_config_interface deadlock fix

From: Andrew Morton
Date: Fri Aug 01 2008 - 04:17:10 EST


On Fri, 01 Aug 2008 11:03:37 +0300 Pekka Enberg <penberg@xxxxxxxxxxxxxx> wrote:

> Jiri Slaby wrote:
> > Dave Young napsal(a):
> >> In the drivers/net/wireless/ath5k/base.c, there's recursive locking of
> >> sc->lock
> >> This casue the kernel stuck
> >>
> >> Bug report please see:
> >> http://lkml.org/lkml/2008/7/29/32
> >>
> >> Fixed it by remove the lock in sub routine "ath5k_beacon_update",
> >> The ath5k_config_interface is the only caller to it.
> >>
> >> [ 171.430207] =============================================
> >> [ 171.432140] [ INFO: possible recursive locking detected ]
> >> [ 171.433113] 2.6.27-rc1-smp #4
> >> [ 171.434079] ---------------------------------------------
> >> [ 171.435039] ath5k_pci/2447 is trying to acquire lock:
> >> [ 171.435990] (&sc->lock){--..}, at: [<f89ee9b5>]
> >> ath5k_config_interface+0xd5/0x340 [ath5k]
> >> [ 171.437046] [ 171.437048] but task is already holding lock:
> >> [ 171.438903] (&sc->lock){--..}, at: [<f89ee91d>]
> >> ath5k_config_interface+0x3d/0x340 [ath5k]
> >> [ 171.439953] [ 171.439954] other info that might help us debug this:
> >> [ 171.441795] 3 locks held by ath5k_pci/2447:
> >> [ 171.442729] #0: ((name)){--..}, at: [<c013a122>]
> >> run_workqueue+0x102/0x1d0
> >> [ 171.443800] #1: (&(&local->scan_work)->work){--..}, at:
> >> [<c013a122>] run_workqueue+0x102/0x1d0
> >> [ 171.444859] #2: (&sc->lock){--..}, at: [<f89ee91d>]
> >> ath5k_config_interface+0x3d/0x340 [ath5k]
> >
> > Should be fixed already:
> > http://git.kernel.org/?p=linux/kernel/git/linville/wireless-2.6.git;a=commitdiff_plain;h=bc05116ab33d30342e2b4b1bcc6d6e1184e9df97
>
> I guess that didn't make it to -stable?

(cc stable!)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/