ATA controller drivers are delaying conflicting commands, avoiding conflicts in device. 21.04.2013 14:32 пользователь "Jeremy Chadwick" <jdc_at_koitsu.org> написал: > On Sun, Apr 21, 2013 at 02:11:04PM +0300, Alexander Motin wrote: > > On 21.04.2013 00:29, Jeremy Chadwick wrote: > > >- The ATA commands which lead up to the error also vary. Many are for > > > write requests, and from some entries I can see that the OS was doing > > > NCQ writes (WRITE FPDMA QUEUED) and then suddenly decided to do a > > > classic 28-bit LBA write (WRITE DMA). I'm not sure why an OS would > do > > > this (there's nothing optimal about it) unless there were conditions > > > occurring where the OS/ATA driver said "this NCQ write isn't working > > > (timeout, etc.), let me retry with a classic 28-bit LBA write". > > > > ATA disk driver in CAM inserts non-queued command every several > > seconds of continuous load to limit possible command starvation > > inside the disk. SCSI driver does alike things, but inserts ordered > > command flag, that does not exist in SATA, instead of different > > command. > > Thanks for the insights Alexander, greatly appreciated. > > I'm a little confused by your description, because if I'm reading it > right, it sounds like it conflicts with what the ACS-2 spec states. > Quoting T13/2015-D rev 3 (I'm aware it's a working draft), section > 4.16.1: > > "If the device receives a command that is not an NCQ command while NCQ > commands are in the queue, then the device shall return command aborted > for the new command and for all of the NCQ commands that are in the > queue." > > I assume this means ABRT status is returned to the host controller; if > so (and by design of course), how do we differentiate between that > condition and any other I/O condition that induces ABRT? > > Possibly in the answer is in this admission: I should probably get > around to reading ATA8-AST sometime. :-) > > -- > | Jeremy Chadwick jdc_at_koitsu.org | > | UNIX Systems Administrator http://jdc.koitsu.org/ | > | Mountain View, CA, US | > | Making life hard for others since 1977. PGP 4BD6C0CB | >Received on Sun Apr 21 2013 - 10:00:00 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:36 UTC