Re: aic7xxx support for >2TB volumes?

Brian King
2005-11-21T14:48:17Z

Kilian CAVALOTTI wrote:
> On Monday 21 November 2005 05:53, you wrote:
>
>>I don't think slave_configure is the right place to be modifying
>>a scsi_host attribute. How about this patch instead? Only compile
>>tested.
>
>
> Patch applied on 2.6.15-rc2, and gives no better result:
>
> # sg_readcap -16 -vv /dev/sdb
> read capacity (16) cdb: 9e 10 00 00 00 00 00 00 00 00 00 00 00 20 00 00
> READ CAPACITY 16 command error: Host_status=0x0b [DID_SOFT_ERROR]
>
> dmesg output:
> --------------------------------------------------------------------------
> ACPI: PCI Interrupt 0000:05:04.0[A] -> GSI 106 (level, low) -> IRQ 25
> scsi3 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 7.0
> <Adaptec 3960D Ultra160 SCSI adapter>
> aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
>
> Vendor: IFT Model: A16U-G1410 Rev: 342J
> Type: Direct-Access ANSI SCSI revision: 05
> scsi3:A:4:0: Tagged Queuing enabled. Depth 32
> target3:0:4: Beginning Domain Validation
> target3:0:4: wide asynchronous.
> target3:0:4: FAST-80 WIDE SCSI 160.0 MB/s DT (12.5 ns, offset 127)
> target3:0:4: Ending Domain Validation
> sdc : very big device. try to use READ CAPACITY(16).
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> sdc : READ CAPACITY(16) failed.
> sdc : status=0, message=00, host=7, driver=00
> sdc : use 0xffffffff as device size
> SCSI device sdc: 4294967296 512-byte hdwr sectors (2199023 MB)
> SCSI device sdc: drive cache: write back
> sdc : very big device. try to use READ CAPACITY(16).
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 3 - Abort Tag Completed.
> (scsi3:A:4:0): No or incomplete CDB sent to device.
> (scsi3:A:4:0): Protocol violation in Message-in phase. Attempting to abort.
> (scsi3:A:4:0): Abort Tag Message Sent
> (scsi3:A:4:0): SCB 2 - Abort Tag Completed.
> sdc : READ CAPACITY(16) failed.
> sdc : status=0, message=00, host=7, driver=00
> sdc : use 0xffffffff as device size
> SCSI device sdc: 4294967296 512-byte hdwr sectors (2199023 MB)
> SCSI device sdc: drive cache: write back
> sdc: sdc1
> sd 3:0:4:0: Attached scsi disk sdc
> sd 3:0:4:0: Attached scsi generic sg3 type 0
> --------------------------------------------------------------------------
>
> Does this mean the HBA has an hardware limit?

Quite possibly. Looking at ahc_linux_run_command in aic7xxx_osm.c it appears
that commands with a cdb length of > 12 are sent to the adapter in a different way.
Perhaps this method does not work on the card you have.

--
Brian King
eServer Storage I/O
IBM Linux Technology Center