queue_delayed_work(ata_wq, &ap->pio_task, timeout); else queue_work(ata_wq, &ap->pio_task); 
queue_delayed_work(ata_wq, &ap->pio_task, timeout); else if (!qc_completed) goto fsm_start; 
static void ata_pio_task(void *_data){	struct ata_port *ap = _data;	unsigned long timeout = 0;	switch (ap->pio_task_state) {	case PIO_ST_IDLE:		return;	case PIO_ST:		ata_pio_block(ap);		break;	case PIO_ST_LAST:		ata_pio_complete(ap);		break;	case PIO_ST_POLL:	case PIO_ST_LAST_POLL:		timeout = ata_pio_poll(ap);		break;	case PIO_ST_TMOUT:	case PIO_ST_ERR:		ata_pio_error(ap);		return;	}	if (timeout)		queue_delayed_work(ata_wq, &ap->pio_task,				   timeout);	else		queue_work(ata_wq, &ap->pio_task);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/7fb6ec287a05d7a71ec086d8bc9a452d5e16ff1a/libata-core.c/buggy/drivers/scsi/libata-core.c