Hello, Just mirroring this bug over to you. the stoch 2.2.14 - 2.4.0 aic7xxx drive is BROKEN in relation to 160M controllers. the TCQ logic is flawed. There are fixes 1. Disable TCQ for the AIC7xxx driver. (Config file option) 2. Use the new beta driver. http://people.FreeBSD.org/~gibbs/linux/ linux-aic7xxx-6.0.9BETA-2.4.0.diffs 3. Use the patch below: I have notified the powers that be and the kernel-list has a thread relating to this. But wile in bugzilla I thought I would drop one to you :) Leslie Donaldson *** linux/drivers/scsi/aic7xxx.c.2.4.0-12 Sat Jan 6 21:55:47 2001 --- linux/drivers/scsi/aic7xxx.c Sat Jan 6 22:08:12 2001 *************** *** 7073,7078 **** --- 7073,7092 ---- else { + if(((strcmp("Adaptec AIC-7892 Ultra 160/m SCSI host adapter",board_names[p->board_name_index])) == 0 ) || + ((strcmp("Adaptec AIC-7899 Ultra 160/m SCSI host adapter",board_names[p->board_name_index])) == 0 )) + { + /* The TCQ code for 160M devices is BROKEN */ + /* This is a quick, dirty, sad fix until I have time for a better */ + /* one. We do it this way in case the driver is supporting two seperate */ + /* styles of scsi chipsets... I do have two boards so it does happen */ + tag_enabled = FALSE; + device->queue_depth = 3; /* Tagged queueing is disabled. */ + printk(INFO_LEAD "DISABLED TAGGED QUEUING, queue depth %d.\n", + p->host_no, device->channel, device->id, + device->lun, 0); + } + else if (aic7xxx_tag_info[p->instance].tag_commands[tindex] == 255) { tag_enabled = FALSE;