[PATCH] isdn: fix-up schedule_timeout() usage
Nishanth Aravamudan [Mon, 7 Nov 2005 09:01:16 +0000 (01:01 -0800)]
Use schedule_timeout_interruptible() instead of
set_current_state()/schedule_timeout() to reduce kernel size.

Signed-off-by: Nishanth Aravamudan <nacc@us.ibm.com>
Cc: Karsten Keil <kkeil@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

drivers/isdn/i4l/isdn_tty.c
drivers/isdn/icn/icn.c
drivers/isdn/isdnloop/isdnloop.c
drivers/isdn/sc/init.c
drivers/isdn/sc/message.c

index b37ef1f..356ee48 100644 (file)
@@ -1721,8 +1721,7 @@ isdn_tty_close(struct tty_struct *tty, struct file *filp)
                 */
                timeout = jiffies + HZ;
                while (!(info->lsr & UART_LSR_TEMT)) {
-                       set_current_state(TASK_INTERRUPTIBLE);
-                       schedule_timeout(20);
+                       schedule_timeout_interruptible(20);
                        if (time_after(jiffies,timeout))
                                break;
                }
index 386df71..6649f8b 100644 (file)
@@ -947,8 +947,7 @@ icn_loadproto(u_char __user * buffer, icn_card * card)
                                icn_maprelease_channel(card, 0);
                                return -EIO;
                        }
-                       set_current_state(TASK_INTERRUPTIBLE);
-                       schedule_timeout(10);
+                       schedule_timeout_interruptible(10);
                }
        }
        writeb(0x20, &sbuf_n);
index 14e1f8f..33d3397 100644 (file)
@@ -1161,12 +1161,9 @@ isdnloop_command(isdn_ctrl * c, isdnloop_card * card)
                                        if (a) {
                                                if (!card->leased) {
                                                        card->leased = 1;
-                                                       while (card->ptype == ISDN_PTYPE_UNKNOWN) {
-                                                               set_current_state(TASK_INTERRUPTIBLE);
-                                                               schedule_timeout(10);
-                                                       }
-                                                       set_current_state(TASK_INTERRUPTIBLE);
-                                                       schedule_timeout(10);
+                                                       while (card->ptype == ISDN_PTYPE_UNKNOWN)
+                                                               schedule_timeout_interruptible(10);
+                                                       schedule_timeout_interruptible(10);
                                                        sprintf(cbuf, "00;FV2ON\n01;EAZ1\n02;EAZ2\n");
                                                        i = isdnloop_writecmd(cbuf, strlen(cbuf), 0, card);
                                                        printk(KERN_INFO
index 1ebed04..62b7acf 100644 (file)
@@ -529,8 +529,7 @@ static int identify_board(unsigned long rambase, unsigned int iobase)
         */
        x = 0;
        while((inb(iobase + FIFOSTAT_OFFSET) & RF_HAS_DATA) && x < 100) {
-               set_current_state(TASK_INTERRUPTIBLE);
-               schedule_timeout(1);
+               schedule_timeout_interruptible(1);
                x++;
        }
        if(x == 100) {
index ca204da..0a0fe6b 100644 (file)
@@ -208,8 +208,7 @@ int send_and_receive(int card,
        tries = 0;
        /* wait for the response */
        while (tries < timeout) {
-               set_current_state(TASK_INTERRUPTIBLE);
-               schedule_timeout(1);
+               schedule_timeout_interruptible(1);
                
                pr_debug("SAR waiting..\n");