diff -urpNX dontdiff a/drivers/ide/ide-tape.c b/drivers/ide/ide-tape.c
--- a/drivers/ide/ide-tape.c	2005-04-21 02:03:13.000000000 +0200
+++ b/drivers/ide/ide-tape.c	2005-04-29 10:12:46.000000000 +0200
@@ -2903,7 +2903,7 @@ static int idetape_wait_ready(ide_drive_
 		} else if (!(tape->sense_key == 2 && tape->asc == 4 &&
 			     (tape->ascq == 1 || tape->ascq == 8)))
 			return -EIO;
-		current->state = TASK_INTERRUPTIBLE;
+		set_current_state(TASK_INTERRUPTIBLE);
   		schedule_timeout(HZ / 10);
 	}
 	return -EIO;
