printk("%s: abort, target %d.%d:%d, pid %ld inactive.\n", ha->board_name, SCarg->device->channel, SCarg->device->id, SCarg->device->lun, SCarg->pid); 
scmd_printk(KERN_INFO, SCarg, "abort, pid %ld inactive.\n", SCarg->pid); 
static int eata2x_eh_abort(struct scsi_cmnd *SCarg){	struct Scsi_Host *shost = SCarg->device->host;	struct hostdata *ha = (struct hostdata *)shost->hostdata;	unsigned int i;	if (SCarg->host_scribble == NULL) {		printk("%s: abort, target %d.%d:%d, pid %ld inactive.\n",		       ha->board_name, SCarg->device->channel, SCarg->device->id,		       SCarg->device->lun, SCarg->pid);		return SUCCESS;	}	i = *(unsigned int *)SCarg->host_scribble;	printk("%s: abort, mbox %d, target %d.%d:%d, pid %ld.\n",	       ha->board_name, i, SCarg->device->channel, SCarg->device->id,	       SCarg->device->lun, SCarg->pid);	if (i >= shost->can_queue)		panic("%s: abort, invalid SCarg->host_scribble.\n", ha->board_name);	if (wait_on_busy(shost->io_port, MAXLOOP)) {		printk("%s: abort, timeout error.\n", ha->board_name);		return FAILED;	}	if (ha->cp_stat[i] == FREE) {		printk("%s: abort, mbox %d is free.\n", ha->board_name, i);		return SUCCESS;	}	if (ha->cp_stat[i] == IN_USE) {		printk("%s: abort, mbox %d is in use.\n", ha->board_name, i);		if (SCarg != ha->cp[i].SCpnt)			panic("%s: abort, mbox %d, SCarg %p, cp SCpnt %p.\n",			      ha->board_name, i, SCarg, ha->cp[i].SCpnt);		if (inb(shost->io_port + REG_AUX_STATUS) & IRQ_ASSERTED)			printk("%s: abort, mbox %d, interrupt pending.\n",			       ha->board_name, i);		return FAILED;	}	if (ha->cp_stat[i] == IN_RESET) {		printk("%s: abort, mbox %d is in reset.\n", ha->board_name, i);		return FAILED;	}	if (ha->cp_stat[i] == LOCKED) {		printk("%s: abort, mbox %d is locked.\n", ha->board_name, i);		return SUCCESS;	}	if (ha->cp_stat[i] == READY || ha->cp_stat[i] == ABORTING) {		unmap_dma(i, ha);		SCarg->result = DID_ABORT << 16;		SCarg->host_scribble = NULL;		ha->cp_stat[i] = FREE;		printk("%s, abort, mbox %d ready, DID_ABORT, pid %ld done.\n",		       ha->board_name, i, SCarg->pid);		SCarg->scsi_done(SCarg);		return SUCCESS;	}	panic("%s: abort, mbox %d, invalid cp_stat.\n", ha->board_name, i);}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/017560fca496f72ed9dd734ffde63ce39dfe0411/eata.c/clean/drivers/scsi/eata.c