diff options
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/char/ftape/lowlevel/fdc-io.c | 6 | ||||
| -rw-r--r-- | drivers/char/hw_random.c | 5 | ||||
| -rw-r--r-- | drivers/char/ip2/i2lib.c | 6 | ||||
| -rw-r--r-- | drivers/char/ipmi/ipmi_si_intf.c | 18 | ||||
| -rw-r--r-- | drivers/char/ipmi/ipmi_watchdog.c | 6 | ||||
| -rw-r--r-- | drivers/char/mxser.c | 12 | 
6 files changed, 17 insertions, 36 deletions
diff --git a/drivers/char/ftape/lowlevel/fdc-io.c b/drivers/char/ftape/lowlevel/fdc-io.c index 1704a2a5704..b2e0928e842 100644 --- a/drivers/char/ftape/lowlevel/fdc-io.c +++ b/drivers/char/ftape/lowlevel/fdc-io.c @@ -387,10 +387,8 @@ int fdc_interrupt_wait(unsigned int time)  	set_current_state(TASK_INTERRUPTIBLE);  	add_wait_queue(&ftape_wait_intr, &wait); -	while (!ft_interrupt_seen && timeout) { -		set_current_state(TASK_INTERRUPTIBLE); -		timeout = schedule_timeout(timeout); -        } +	while (!ft_interrupt_seen && timeout) +		timeout = schedule_timeout_interruptible(timeout);  	spin_lock_irq(¤t->sighand->siglock);  	current->blocked = old_sigmask; diff --git a/drivers/char/hw_random.c b/drivers/char/hw_random.c index 3480535a09c..6f673d2de0b 100644 --- a/drivers/char/hw_random.c +++ b/drivers/char/hw_random.c @@ -513,10 +513,7 @@ static ssize_t rng_dev_read (struct file *filp, char __user *buf, size_t size,  			return ret ? : -EAGAIN;  		if(need_resched()) -		{ -			current->state = TASK_INTERRUPTIBLE; -			schedule_timeout(1); -		} +			schedule_timeout_interruptible(1);  		else  			udelay(200);	/* FIXME: We could poll for 250uS ?? */ diff --git a/drivers/char/ip2/i2lib.c b/drivers/char/ip2/i2lib.c index 82c5f30375a..ba85eb1b6ec 100644 --- a/drivers/char/ip2/i2lib.c +++ b/drivers/char/ip2/i2lib.c @@ -655,8 +655,7 @@ i2QueueCommands(int type, i2ChanStrPtr pCh, int timeout, int nCommands,  			timeout--;   // So negative values == forever  		if (!in_interrupt()) { -			current->state = TASK_INTERRUPTIBLE; -			schedule_timeout(1);	// short nap  +			schedule_timeout_interruptible(1);	// short nap  		} else {  			// we cannot sched/sleep in interrrupt silly  			return 0;    @@ -1132,8 +1131,7 @@ i2Output(i2ChanStrPtr pCh, const char *pSource, int count, int user )  					ip2trace (CHANN, ITRC_OUTPUT, 61, 0 ); -					current->state = TASK_INTERRUPTIBLE; -					schedule_timeout(2); +					schedule_timeout_interruptible(2);  					if (signal_pending(current)) {  						break;  					} diff --git a/drivers/char/ipmi/ipmi_si_intf.c b/drivers/char/ipmi/ipmi_si_intf.c index 278f8410499..b6e5cbfb09f 100644 --- a/drivers/char/ipmi/ipmi_si_intf.c +++ b/drivers/char/ipmi/ipmi_si_intf.c @@ -1920,8 +1920,7 @@ static int try_get_dev_id(struct smi_info *smi_info)  	for (;;)  	{  		if (smi_result == SI_SM_CALL_WITH_DELAY) { -			set_current_state(TASK_UNINTERRUPTIBLE); -			schedule_timeout(1); +			schedule_timeout_uninterruptible(1);  			smi_result = smi_info->handlers->event(  				smi_info->si_sm, 100);  		} @@ -2256,10 +2255,8 @@ static int init_one_smi(int intf_num, struct smi_info **smi)  	/* Wait for the timer to stop.  This avoids problems with race  	   conditions removing the timer here. */ -	while (! new_smi->timer_stopped) { -		set_current_state(TASK_UNINTERRUPTIBLE); -		schedule_timeout(1); -	} +	while (!new_smi->timer_stopped) +		schedule_timeout_uninterruptible(1);   out_err:  	if (new_smi->intf) @@ -2379,17 +2376,14 @@ static void __exit cleanup_one_si(struct smi_info *to_clean)  	/* Wait for the timer to stop.  This avoids problems with race  	   conditions removing the timer here. */ -	while (! to_clean->timer_stopped) { -		set_current_state(TASK_UNINTERRUPTIBLE); -		schedule_timeout(1); -	} +	while (!to_clean->timer_stopped) +		schedule_timeout_uninterruptible(1);  	/* Interrupts and timeouts are stopped, now make sure the  	   interface is in a clean state. */  	while (to_clean->curr_msg || (to_clean->si_state != SI_NORMAL)) {  		poll(to_clean); -		set_current_state(TASK_UNINTERRUPTIBLE); -		schedule_timeout(1); +		schedule_timeout_uninterruptible(1);  	}  	rv = ipmi_unregister_smi(to_clean->intf); diff --git a/drivers/char/ipmi/ipmi_watchdog.c b/drivers/char/ipmi/ipmi_watchdog.c index e71aaae855a..2da64bf7469 100644 --- a/drivers/char/ipmi/ipmi_watchdog.c +++ b/drivers/char/ipmi/ipmi_watchdog.c @@ -1037,10 +1037,8 @@ static __exit void ipmi_unregister_watchdog(void)  	/* Wait to make sure the message makes it out.  The lower layer has  	   pointers to our buffers, we want to make sure they are done before  	   we release our memory. */ -	while (atomic_read(&set_timeout_tofree)) { -		set_current_state(TASK_UNINTERRUPTIBLE); -		schedule_timeout(1); -	} +	while (atomic_read(&set_timeout_tofree)) +		schedule_timeout_uninterruptible(1);  	/* Disconnect from IPMI. */  	rv = ipmi_destroy_user(watchdog_user); diff --git a/drivers/char/mxser.c b/drivers/char/mxser.c index d0ef1ae4129..45d012d85e8 100644 --- a/drivers/char/mxser.c +++ b/drivers/char/mxser.c @@ -1058,8 +1058,7 @@ static void mxser_close(struct tty_struct *tty, struct file *filp)  		 */  		timeout = jiffies + HZ;  		while (!(inb(info->base + UART_LSR) & UART_LSR_TEMT)) { -			set_current_state(TASK_INTERRUPTIBLE); -			schedule_timeout(5); +			schedule_timeout_interruptible(5);  			if (time_after(jiffies, timeout))  				break;  		} @@ -1080,10 +1079,8 @@ static void mxser_close(struct tty_struct *tty, struct file *filp)  	info->event = 0;  	info->tty = NULL;  	if (info->blocked_open) { -		if (info->close_delay) { -			set_current_state(TASK_INTERRUPTIBLE); -			schedule_timeout(info->close_delay); -		} +		if (info->close_delay) +			schedule_timeout_interruptible(info->close_delay);  		wake_up_interruptible(&info->open_wait);  	} @@ -1801,8 +1798,7 @@ static void mxser_wait_until_sent(struct tty_struct *tty, int timeout)  #ifdef SERIAL_DEBUG_RS_WAIT_UNTIL_SENT  		printk("lsr = %d (jiff=%lu)...", lsr, jiffies);  #endif -		set_current_state(TASK_INTERRUPTIBLE); -		schedule_timeout(char_time); +		schedule_timeout_interruptible(char_time);  		if (signal_pending(current))  			break;  		if (timeout && time_after(jiffies, orig_jiffies + timeout))  | 
