Source-Changes-HG archive

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

[src/jdolecek-ncq]: src/sys/dev/ata expand what needs to be done with error h...



details:   https://anonhg.NetBSD.org/src/rev/49f115ceaf57
branches:  jdolecek-ncq
changeset: 822955:49f115ceaf57
user:      jdolecek <jdolecek%NetBSD.org@localhost>
date:      Mon Jul 03 18:17:01 2017 +0000

description:
expand what needs to be done with error handling

diffstat:

 sys/dev/ata/TODO.ncq |  9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diffs (21 lines):

diff -r bf2e8e0f1d01 -r 49f115ceaf57 sys/dev/ata/TODO.ncq
--- a/sys/dev/ata/TODO.ncq      Wed Jun 28 19:59:36 2017 +0000
+++ b/sys/dev/ata/TODO.ncq      Mon Jul 03 18:17:01 2017 +0000
@@ -5,9 +5,16 @@
 
 test wd* at umass?, confirm the ata_channel kludge works
 
-test device error handling (currently appears to not work well, at least in NCQ case)
+test non-NCQ device error handling
+- test retry code paths, locking
+- channel reset on fatal errors
 
 do proper NCQ error recovery (currently not even really attempted)
+- if fatal error, do channel reset
+- if tranfer error (both TFD.STS.BSY and DRQ is 0), need READ LOG EXT log
+  page 10h to read tag which caused the error, and reset the device to idle
+- need to cancel and restart the other active transfers in a way to not
+  increase retry count, and not trigger drive reset
 
 maybe do device error handling in not-interrupt-context (maybe this should be
 done on a mpata branch?)



Home | Main Index | Thread Index | Old Index