libertas: fix cmdpendingq locking
commit6c12f0b29666e5d4b60af584f27e75caa63a9089
authorPaul Fox <pgf@laptop.org>
Mon, 9 May 2011 09:40:42 +0000 (9 10:40 +0100)
committerGreg Kroah-Hartman <gregkh@suse.de>
Mon, 23 May 2011 18:20:17 +0000 (23 11:20 -0700)
tree5ccd6cb3855983da8b274370d6463ff179cb306c
parentd32fe5ddfd35e865d13f2fa829591ffe189e8752
libertas: fix cmdpendingq locking

commit 2ae1b8b35faba31a59b153cbad07f9c15de99740 upstream.

We occasionally see list corruption using libertas.

While we haven't been able to diagnose this precisely, we have spotted
a possible cause: cmdpendingq is generally modified with driver_lock
held. However, there are a couple of points where this is not the case.

Fix up those operations to execute under the lock, it seems like
the correct thing to do and will hopefully improve the situation.

Signed-off-by: Paul Fox <pgf@laptop.org>
Signed-off-by: Daniel Drake <dsd@laptop.org>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/net/wireless/libertas/cmd.c