Subject: [KJ] [PATCH 3/20] net/8139too: remove interruptible_sleep_on_timeout() usage

From: Nishanth Aravamudan <[email-masked]>
Date: Wed, 2 Feb 2005 10:11:29 -0800

Hello,

Please consider applying.

One thing I would have preferred using here is use wait_event*(), but there is
no condition. However, try_to_freeze(PF_FREEZE) could be used as one, if the
return condition matters -- it can return 0 or 1, from what I understand. If the
intent is to loop until the task is "frozen," then I can revise the patch to use
wait_event_interruptible_timeout().

Description: Replace deprecated interruptible_sleep_on_timeout() function calls
with direct wait-queue usage. I did not find the direct wake_up_interruptible()
function call in this file for the wait-queue, but that may not be an issue.
Patch is compile-tested.

Signed-off-by: Nishanth Aravamudan <[email-masked]>

--- 2.6.11-rc2-kj-v/drivers/net/8139too.c	2005-01-24 09:34:08.000000000 -0800
+++ 2.6.11-rc2-kj/drivers/net/8139too.c	2005-01-27 11:22:19.000000000 -0800
@@ -108,6 +108,7 @@
 #include <linux/mii.h>
 #include <linux/completion.h>
 #include <linux/crc32.h>
+#include <linux/wait.h>
 #include <asm/io.h>
 #include <asm/uaccess.h>
 #include <asm/irq.h>
@@ -1612,6 +1613,7 @@ static inline void rtl8139_thread_iter (
 
 static int rtl8139_thread (void *data)
 {
+	DEFINE_WAIT(wait);
 	struct net_device *dev = data;
 	struct rtl8139_private *tp = dev->priv;
 	unsigned long timeout;
@@ -1622,7 +1624,9 @@ static int rtl8139_thread (void *data)
 	while (1) {
 		timeout = next_tick;
 		do {
-			timeout = interruptible_sleep_on_timeout (&tp->thr_wait, timeout);
+			prepare_to_wait(&tp->thr_wait, &wait, TASK_INTERRUPTIBLE);
+			timeout = schedule_timeout(timeout);
+			finish_wait(&tp->thr_wait, &wait);
 			/* make swsusp happy with our thread */
 			try_to_freeze(PF_FREEZE);
 		} while (!signal_pending (current) && (timeout > 0));
_______________________________________________
Kernel-janitors mailing list
[email-masked]
http://lists.osdl.org/mailman/listinfo/kernel-janitors