Module Name:    src
Committed By:   jdolecek
Date:           Mon Jul  3 18:17:01 UTC 2017

Modified Files:
        src/sys/dev/ata [jdolecek-ncq]: TODO.ncq

Log Message:
expand what needs to be done with error handling


To generate a diff of this commit:
cvs rdiff -u -r1.1.2.28 -r1.1.2.29 src/sys/dev/ata/TODO.ncq

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/dev/ata/TODO.ncq
diff -u src/sys/dev/ata/TODO.ncq:1.1.2.28 src/sys/dev/ata/TODO.ncq:1.1.2.29
--- src/sys/dev/ata/TODO.ncq:1.1.2.28	Wed Jun 28 19:54:38 2017
+++ src/sys/dev/ata/TODO.ncq	Mon Jul  3 18:17:01 2017
@@ -5,9 +5,16 @@ siisata - fix all new XXX and unmergable
 
 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?)

Reply via email to