Skip to content

Latest commit

 

History

History
19 lines (17 loc) · 2.3 KB

File metadata and controls

19 lines (17 loc) · 2.3 KB

Tests

Besides utests tests' suite which help finding possible regressions, here's a table of functional tests to perform before we know this driver is actually "stable":

Test Name What should be checked Condition to pass
Timeout - no userspace running & processing Kernel watchdog thread stops I/O transaction Got ETIMEDOUT error from MTD ioctl
Timeout - userspace running & but delay processing Kernel watchdog thread stops I/O transaction Got ETIMEDOUT error from MTD ioctl
User-mode Passthrough mode User passthrough I/O as-is No errors, read and write to MTD device are transparent
User-mode Erroneous processing mode User introducing I/O errors (bad ECC, etc) Upper layers complaining about bad blocks, bad ECC, etc
User-mode BCH-8 processing mode User doing ECC on BCH-8 already-"corrected" data I/O transparent to upper layers
User-mode BCH-16 processing mode User doing ECC on BCH-16 already-"corrected" data I/O transparent to upper layers
User-mode Hamming processing mode User doing ECC on Hamming already-"corrected" data I/O transparent to upper layers
User-mode LDPC processing mode User doing ECC on LDPC already-"corrected" data I/O transparent to upper layers
User-mode encountering bad block User doing I/O on known bad block I/O error propagated to upper layers
Attaching to NAND chip that requires scrambling? Define nandsim with chip that requires scrambling Kernel module refues to complete load sequence
Replacing order of write and read queues in buffer Self-explanatory Every works correctly