All of lore.kernel.org
 help / color / mirror / Atom feed
* [Kernel-janitors] [PATCH 2.6.9-rc2 2/2] i2c/i2c-mpc: replace
@ 2004-09-16 23:04 Nishanth Aravamudan
  2004-09-16 23:40 ` Nishanth Aravamudan
  2004-09-17  0:02 ` [Kernel-janitors] [PATCH 2.6.9-rc2 2/2] ieee1394/sbp2: replace Nishanth Aravamudan
  0 siblings, 2 replies; 3+ messages in thread
From: Nishanth Aravamudan @ 2004-09-16 23:04 UTC (permalink / raw)
  To: kernel-janitors

[-- Attachment #1: Type: text/plain, Size: 1253 bytes --]

Any comments would be appreciated.

Description: Properly orders set_current_state() and add_wait_queue().
Uses msleep_interruptible() in place of schedule_timeout() to guarantee
the task delays as expected. Uses set_current_state() instead of direct
assignment of current->state.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>

--- 2.6.9-rc2-vanilla/drivers/i2c/busses/i2c-mpc.c	2004-09-13 17:15:46.000000000 -0700
+++ 2.6.9-rc2/drivers/i2c/busses/i2c-mpc.c	2004-09-16 16:01:25.000000000 -0700
@@ -91,9 +91,9 @@ static int i2c_wait(struct mpc_i2c *i2c,
 		x = readb(i2c->base + MPC_I2C_SR);
 		writeb(0, i2c->base + MPC_I2C_SR);
 	} else {
+		set_current_state(TASK_INTERRUPTIBLE);
 		add_wait_queue(&i2c->queue, &wait);
 		while (!(i2c->interrupt & CSR_MIF)) {
-			set_current_state(TASK_INTERRUPTIBLE);
 			if (signal_pending(current)) {
 				pr_debug("I2C: Interrupted\n");
 				result = -EINTR;
@@ -104,9 +104,9 @@ static int i2c_wait(struct mpc_i2c *i2c,
 				result = -EIO;
 				break;
 			}
-			schedule_timeout(timeout);
+			msleep_interruptible(jiffies_to_msecs(timeout));
 		}
-		current->state = TASK_RUNNING;
+		set_current_state(TASK_RUNNING);
 		remove_wait_queue(&i2c->queue, &wait);
 		x = i2c->interrupt;
 		i2c->interrupt = 0;

[-- Attachment #2: Type: text/plain, Size: 167 bytes --]

_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors

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

end of thread, other threads:[~2004-09-17  0:02 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-09-16 23:04 [Kernel-janitors] [PATCH 2.6.9-rc2 2/2] i2c/i2c-mpc: replace Nishanth Aravamudan
2004-09-16 23:40 ` Nishanth Aravamudan
2004-09-17  0:02 ` [Kernel-janitors] [PATCH 2.6.9-rc2 2/2] ieee1394/sbp2: replace Nishanth Aravamudan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.