linux-wireless.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] libertas: before sleeping, check for a command result
@ 2008-05-23 14:04 Holger Schurig
  2008-05-23 14:26 ` Johan Adolfsson
  2008-05-27 20:08 ` Dan Williams
  0 siblings, 2 replies; 7+ messages in thread
From: Holger Schurig @ 2008-05-23 14:04 UTC (permalink / raw)
  To: libertas-dev, Dan Williams, linux-wireless, John W. Linville

If we don't check for a command response early, but rather sleep,
then we might sleep despite an already-received command response.
This will lead to a command-timeout.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>

Index: wireless-testing/drivers/net/wireless/libertas/main.c
===================================================================
--- wireless-testing.orig/drivers/net/wireless/libertas/main.c	2008-05-23 14:25:16.000000000 +0200
+++ wireless-testing/drivers/net/wireless/libertas/main.c	2008-05-23 14:25:51.000000000 +0200
@@ -722,14 +722,14 @@ static int lbs_thread(void *data)
 			shouldsleep = 1;	/* Something is en route to the device already */
 		else if (priv->tx_pending_len > 0)
 			shouldsleep = 0;	/* We've a packet to send */
+		else if (priv->resp_len[priv->resp_idx])
+			shouldsleep = 0;	/* We have a command response */
 		else if (priv->cur_cmd)
 			shouldsleep = 1;	/* Can't send a command; one already running */
 		else if (!list_empty(&priv->cmdpendingq))
 			shouldsleep = 0;	/* We have a command to send */
 		else if (__kfifo_len(priv->event_fifo))
 			shouldsleep = 0;	/* We have an event to process */
-		else if (priv->resp_len[priv->resp_idx])
-			shouldsleep = 0;	/* We have a command response */
 		else
 			shouldsleep = 1;	/* No command */
 

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2008-05-27 20:09 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-05-23 14:04 [PATCH] libertas: before sleeping, check for a command result Holger Schurig
2008-05-23 14:26 ` Johan Adolfsson
2008-05-23 14:32   ` Dan Williams
2008-05-25 20:28     ` Holger Schurig
2008-05-23 14:57   ` Holger Schurig
2008-05-26 16:14     ` Johan Adolfsson
2008-05-27 20:08 ` Dan Williams

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).