netdev
[Top] [All Lists]

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

To: jgarzik@xxxxxxxxx
Subject: [PATCH 3/20] net/8139too: remove interruptible_sleep_on_timeout() usage
From: Nishanth Aravamudan <nacc@xxxxxxxxxx>
Date: Wed, 2 Feb 2005 10:11:29 -0800
Cc: netdev@xxxxxxxxxxx, kernel-janitors@xxxxxxxxxxxxxx
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mutt/1.5.6+20040907i
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 <nacc@xxxxxxxxxx>

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

<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH 3/20] net/8139too: remove interruptible_sleep_on_timeout() usage, Nishanth Aravamudan <=