Re: [BUG] libahci returns stale result tf much of the time.

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

 



On Tue, Oct 5, 2010 at 10:06 AM, Tejun Heo <htejun@xxxxxxxxx> wrote:
> Hello,
>
> On 10/05/2010 04:06 PM, Mark Lord wrote:
>> Yeah, maybe something like that.
>>
>> But do note that I have verified that "hdparm -C" does work correctly,
>> and is dependent upon correctly returned result_tf values.
>>
>> It's not a PIO "data" command, though.  Does it get issued the same way?
>
> PIO Setup FIS is not used for nodata commands.  IIRC, nodata uses D2H
> Reg FIS for command completion.  I think the only exception is PIO
> data commands.  The weird hack is to satisfy PIO data command protocol
> timing requirement stemming from PATA specification.  Eh... ugly.

>From my reading of the SATA spec, with the PIO data-in protocol, the
device can raise a D2H register FIS prior to transmitting data if the
command is aborted due to an error, but for normal completion, the
state machine just goes back to idle after the last data FIS is
transmitted and there's no final D2H register FIS - the final status
is set by the last PIO Setup FIS received. According to the AHCI spec,
the host adapter is supposed to copy the PIO Setup FIS to memory as
well. Presumably when retrieving the result taskfile for such PIO
data-in transfers we should be pulling it from that area, not the D2H
register FIS area, at least if the device transferred any data?
--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystems]     [Linux SCSI]     [Linux RAID]     [Git]     [Kernel Newbies]     [Linux Newbie]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Samba]     [Device Mapper]

  Powered by Linux