current->state = TASK_INTERRUPTIBLE; schedule_timeout(HZ / 10); 
msleep(100); 
static int idetape_wait_ready(ide_drive_t *drive, unsigned long timeout){	idetape_tape_t *tape = drive->driver_data;	idetape_pc_t pc;	int load_attempted = 0;	/*	 * Wait for the tape to become ready	 */	set_bit(IDETAPE_MEDIUM_PRESENT, &tape->flags);	timeout += jiffies;	while (time_before(jiffies, timeout)) {		idetape_create_test_unit_ready_cmd(&pc);		if (!__idetape_queue_pc_tail(drive, &pc))			return 0;		if ((tape->sense_key == 2 && tape->asc == 4 && tape->ascq == 2)		    || (tape->asc == 0x3A)) {	/* no media */			if (load_attempted)				return -ENOMEDIUM;			idetape_create_load_unload_cmd(drive, &pc, IDETAPE_LU_LOAD_MASK);			__idetape_queue_pc_tail(drive, &pc);			load_attempted = 1;		/* not about to be ready */		} else if (!(tape->sense_key == 2 && tape->asc == 4 &&			     (tape->ascq == 1 || tape->ascq == 8)))			return -EIO;		current->state = TASK_INTERRUPTIBLE;  		schedule_timeout(HZ / 10);	}	return -EIO;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/80ce45fd961ba8c951adc9857bfda87102b1f5b1/ide-tape.c/clean/drivers/ide/ide-tape.c