blktests nvme/039 failure

Shin'ichiro Kawasaki shinichiro at fastmail.com
Mon Apr 10 18:27:36 PDT 2023


On Apr 10, 2023 / 16:06, alan.adamson at oracle.com wrote:
[...]
> I've been able to reproduce it.  The sleep .1 helps but doesn't eliminate
> the issue.  I did notice whenever there was a failure, there was also a
> "blk_print_req_error: 2 callbacks suppressed" in the log which would break
> the parsing the test needs to do.

Ah, I see. The error messages were no printed because pr_err_ratelimited()
suppressed them. AFAIK, there is no way to disable or relax the rate limit from
userland. I think sleep for 5 = DEFAULT_RATE_LIMIT seconds at the beginning of
the test will ensure the error message printed. It will also avoid the "x
callbacks suppressed" messages.

With the change below, I observe no failure on my system.

diff --git a/tests/nvme/039 b/tests/nvme/039
index 11d6d24..5d76297 100755
--- a/tests/nvme/039
+++ b/tests/nvme/039
@@ -139,6 +139,9 @@ test_device() {
 
 	_nvme_err_inject_setup "${ns_dev}" "${ctrl_dev}"
 
+	# wait DEFAULT_RATELIMIT_INTERVAL=5 seconds to ensure errors are printed
+	sleep 5
+
 	inject_unrec_read_on_read "${ns_dev}"
 	inject_invalid_status_on_read "${ns_dev}"
 	inject_write_fault_on_write "${ns_dev}"




More information about the Linux-nvme mailing list