patch-2.2.13 linux/drivers/char/lp.c

Next file: linux/drivers/char/msp3400.c
Previous file: linux/drivers/char/cyclades.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.2.12/linux/drivers/char/lp.c linux/drivers/char/lp.c
@@ -249,7 +249,8 @@
 		lp_table[minor].irq_missed = 1;
 		schedule_timeout(timeout);
 		lp_parport_claim(minor);
-	} else
+	} 
+	else
 		schedule_timeout(timeout);
 }
 
@@ -412,6 +413,7 @@
 	if (LP_POLLED(minor) || LP_PREEMPTED(minor)) {
 		current->state = TASK_INTERRUPTIBLE;
 		lp_parport_release(minor);
+		current->state = TASK_INTERRUPTIBLE;
 		schedule_timeout(LP_TIMEOUT_POLLED);
 		lp_parport_claim(minor);
 		lp_table[minor].irq_missed = 1;
@@ -641,6 +643,7 @@
 		/* Data available. */
 
 		/* Hack: Wait 10ms (between events 6 and 7) */
+		current->state = TASK_INTERRUPTIBLE;
                 schedule_timeout((HZ+99)/100);
                 break;
 	}

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)