Re: [PATCH] aic94xx: fix smartctl utility problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



James Bottomley wrote:
> On Sat, 2007-09-15 at 12:05 -0500, James Bottomley wrote:
>> On Fri, 2007-09-14 at 10:58 -0700, Gilbert Wu wrote:
>>> Fixed the problem that "smartctl -a /dev/some_sata_disk -d ata"  does
>>> not work on SATA device. ( The smartctl v5.38 does need "-d ata"
>>> option.)
>>>   The aic94xx need to return ATA output register for all ATA commands
>>> except ATA Read/Write commands.
>>>   The aic94xx also mark out the DRQ bit from status register which is
>>> treated as AC_ERR_HSM (host state machine violation) error by top layer
>>> if it set to one.
>>>  The firmware of aic94xx chip handle all ATA handshaking, data transfer
>>> and return ATA output register which is sent by the device.  So the DRQ
>>> bit may not reflect the last state of device when the command finished
>>> and it is no meaning for the caller.
>>>
>>> Signed-off-by: Gilbert Wu <gilbert_wu@xxxxxxxxxxx>
>> I'm afraid this can't go in.  It has a bad effect on my expander remote
>> ATAPI device:
> 
> OK, found the root cause: your CSMI_TASK flag is getting set on all
> packet commands.  I can think of two fixes: either smartctl should never
> be used on ATAPI devices (reasonable, since smart is a disc protocol),

Feature code 101h in MMC seems to sink your argument for
cd/dvd drives.

Also tape drives may support SMART and if they do,
smartmontools can access the associated data. And tape
drives may be on an ATAPI transport.

Doug Gilbert

> so we predicate the check by a test for the device being ATA:
> 
> 	if (dev->sata_dev.command_set == ATA_COMMAND_SET
> 	    && !is_ata_rw_cmd(scb->ata_task.fis.command))
> 
> Or simply add ATA_CMD_PACKET to your is_ata_rw_cmd() switch.
> 
> Either works on my system ... which do you prefer.
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux