Description of problem: please confirm the liburing support block null device, because liburing testing failed with the device Version-Release number of selected component (if applicable): 5.14.0-329.el9.x86_64 liburing-2.3-2.el9.x86_64 How reproducible: Steps to Reproduce: [root@storageqe-66 test]# cat config.local TEST_FILES=/dev/nullb0 [root@storageqe-66 test]# 2. make runtests 3. Actual results: Expected results: Additional info: [FAIL][20:50:21][storageqe-66.rhts.eng.pek2.redhat.com]make runtests STDOUT: make[1]: Entering directory '/root/rpmbuild/BUILD/liburing-2.3/src' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/root/rpmbuild/BUILD/liburing-2.3/src' make[1]: Entering directory '/root/rpmbuild/BUILD/liburing-2.3/test' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/root/rpmbuild/BUILD/liburing-2.3/test' make[1]: Entering directory '/root/rpmbuild/BUILD/liburing-2.3/examples' make[1]: Nothing to be done for 'all'. make[1]: Leaving directory '/root/rpmbuild/BUILD/liburing-2.3/examples' make[1]: Entering directory '/root/rpmbuild/BUILD/liburing-2.3/test' Running test 232c93d07b74.t 4 sec [5] Running test 232c93d07b74.t /dev/nullb0 Skipped Running test 35fa71a030ca.t 5 sec [5] Running test 35fa71a030ca.t /dev/nullb0 Skipped Running test 500f9fbadef8.t 0 sec [0] Running test 500f9fbadef8.t /dev/nullb0 Skipped Running test 7ad0e4b2f83c.t 1 sec [1] Running test 7ad0e4b2f83c.t /dev/nullb0 Skipped Running test 8a9973408177.t 0 sec [0] Running test 8a9973408177.t /dev/nullb0 Skipped Running test 917257daa0fe.t 0 sec [0] Running test 917257daa0fe.t /dev/nullb0 Skipped Running test a0908ae19763.t 0 sec [0] Running test a0908ae19763.t /dev/nullb0 Skipped Running test a4c0b3decb33.t 9 sec [9] Running test a4c0b3decb33.t /dev/nullb0 Skipped Running test accept.t 1 sec [1] Running test accept.t /dev/nullb0 Skipped Running test accept-link.t 0 sec [0] Running test accept-link.t /dev/nullb0 Skipped Running test accept-reuse.t 0 sec [0] Running test accept-reuse.t /dev/nullb0 Skipped Running test accept-test.t 0 sec [0] Running test accept-test.t /dev/nullb0 Skipped Running test across-fork.t 0 sec [0] Running test across-fork.t /dev/nullb0 Skipped Running test b19062a56726.t 0 sec [0] Running test b19062a56726.t /dev/nullb0 Skipped Running test b5837bd5311d.t 0 sec [0] Running test b5837bd5311d.t /dev/nullb0 Skipped Running test buf-ring.t 1 sec [0] Running test buf-ring.t /dev/nullb0 Skipped Running test ce593a6c480a.t 1 sec [1] Running test ce593a6c480a.t /dev/nullb0 Skipped Running test close-opath.t 0 sec [0] Running test close-opath.t /dev/nullb0 0 sec [0] Running test connect.t 0 sec [0] Running test connect.t /dev/nullb0 Skipped Running test cq-full.t 0 sec [0] Running test cq-full.t /dev/nullb0 Skipped Running test cq-overflow.t 10 sec [10] Running test cq-overflow.t /dev/nullb0 Skipped Running test cq-peek-batch.t 0 sec [0] Running test cq-peek-batch.t /dev/nullb0 Skipped Running test cq-ready.t 0 sec [0] Running test cq-ready.t /dev/nullb0 Skipped Running test cq-size.t 0 sec [0] Running test cq-size.t /dev/nullb0 Skipped Running test d4ae271dfaae.t 0 sec [0] Running test d4ae271dfaae.t /dev/nullb0 0 sec [0] Running test d77a67ed5f27.t 0 sec [0] Running test d77a67ed5f27.t /dev/nullb0 Skipped Running test defer.t 3 sec [3] Running test defer.t /dev/nullb0 Skipped Running test defer-taskrun.t 0 sec [0] Running test defer-taskrun.t /dev/nullb0 0 sec [0] Running test double-poll-crash.t 0 sec [0] Running test double-poll-crash.t /dev/nullb0 Skipped Running test drop-submit.t 0 sec [0] Running test drop-submit.t /dev/nullb0 Skipped Running test eeed8b54e0df.t 0 sec [0] Running test eeed8b54e0df.t /dev/nullb0 Skipped Running test empty-eownerdead.t 0 sec [0] Running test empty-eownerdead.t /dev/nullb0 Skipped Running test eventfd.t 0 sec [0] Running test eventfd.t /dev/nullb0 Skipped Running test eventfd-disable.t 0 sec [0] Running test eventfd-disable.t /dev/nullb0 Skipped Running test eventfd-reg.t 0 sec [0] Running test eventfd-reg.t /dev/nullb0 Skipped Running test eventfd-ring.t 0 sec [0] Running test eventfd-ring.t /dev/nullb0 Skipped Running test exec-target.t 0 sec [0] Running test exec-target.t /dev/nullb0 0 sec [0] Running test exit-no-cleanup.t 0 sec [0] Running test exit-no-cleanup.t /dev/nullb0 Skipped Running test fadvise.t 0 sec [0] Running test fadvise.t /dev/nullb0 0 sec [0] Running test fallocate.t 0 sec [0] Running test fallocate.t /dev/nullb0 Skipped Running test fc2a85cb02ef.t Test needs failslab/fail_futex/fail_page_alloc enabled, skipped Skipped Running test fc2a85cb02ef.t /dev/nullb0 Skipped Running test fd-pass.t 0 sec [0] Running test fd-pass.t /dev/nullb0 Skipped Running test file-register.t 3 sec [3] Running test file-register.t /dev/nullb0 Skipped Running test files-exit-hang-poll.t 1 sec [1] Running test files-exit-hang-poll.t /dev/nullb0 Skipped Running test files-exit-hang-timeout.t 1 sec [1] Running test files-exit-hang-timeout.t /dev/nullb0 Skipped Running test file-update.t 0 sec [0] Running test file-update.t /dev/nullb0 Skipped Running test file-verify.t 0 sec [1] Running test file-verify.t /dev/nullb0 Test file-verify.t failed with ret 1 Running test fixed-buf-iter.t 0 sec [0] Running test fixed-buf-iter.t /dev/nullb0 Skipped Running test fixed-link.t 0 sec [0] Running test fixed-link.t /dev/nullb0 Skipped Running test fixed-reuse.t 0 sec [0] Running test fixed-reuse.t /dev/nullb0 Skipped Running test fpos.t 0 sec [0] Running test fpos.t /dev/nullb0 Skipped Running test fsync.t 0 sec [0] Running test fsync.t /dev/nullb0 Skipped Running test hardlink.t 0 sec [0] Running test hardlink.t /dev/nullb0 Skipped Running test io-cancel.t 2 sec [2] Running test io-cancel.t /dev/nullb0 Skipped Running test iopoll.t 1 sec [0] Running test iopoll.t /dev/nullb0 0 sec [0] Running test iopoll-leak.t 0 sec [0] Running test iopoll-leak.t /dev/nullb0 0 sec [0] Running test io_uring_enter.t 0 sec [0] Running test io_uring_enter.t /dev/nullb0 Skipped Running test io_uring_passthrough.t Skipped Running test io_uring_passthrough.t /dev/nullb0 Skipped Running test io_uring_register.t 1 sec [0] Running test io_uring_register.t /dev/nullb0 Skipped Running test io_uring_setup.t 0 sec [0] Running test io_uring_setup.t /dev/nullb0 Skipped Running test lfs-openat.t 0 sec [0] Running test lfs-openat.t /dev/nullb0 0 sec [0] Running test lfs-openat-write.t 0 sec [0] Running test lfs-openat-write.t /dev/nullb0 Skipped Running test link.t 0 sec [0] Running test link.t /dev/nullb0 Skipped Running test link_drain.t 0 sec [1] Running test link_drain.t /dev/nullb0 0 sec [0] Running test link-timeout.t 2 sec [1] Running test link-timeout.t /dev/nullb0 Skipped Running test madvise.t 0 sec [0] Running test madvise.t /dev/nullb0 0 sec [1] Running test mkdir.t 0 sec [0] Running test mkdir.t /dev/nullb0 Skipped Running test msg-ring.t 0 sec [0] Running test msg-ring.t /dev/nullb0 Skipped Running test multicqes_drain.t 20 sec [20] Running test multicqes_drain.t /dev/nullb0 Skipped Running test nolibc.t 0 sec [0] Running test nolibc.t /dev/nullb0 Skipped Running test nop-all-sizes.t 0 sec [0] Running test nop-all-sizes.t /dev/nullb0 0 sec [0] Running test nop.t 0 sec [0] Running test nop.t /dev/nullb0 0 sec [0] Running test openat2.t 0 sec [0] Running test openat2.t /dev/nullb0 0 sec [0] Running test open-close.t 0 sec [0] Running test open-close.t /dev/nullb0 0 sec [0] Running test open-direct-link.t 0 sec [0] Running test open-direct-link.t /dev/nullb0 0 sec [0] Running test open-direct-pick.t 0 sec [0] Running test open-direct-pick.t /dev/nullb0 0 sec [0] Running test personality.t 0 sec [0] Running test personality.t /dev/nullb0 0 sec [0] Running test pipe-eof.t 0 sec [0] Running test pipe-eof.t /dev/nullb0 0 sec [0] Running test pipe-reuse.t 0 sec [0] Running test pipe-reuse.t /dev/nullb0 0 sec [0] Running test poll.t 0 sec [0] Running test poll.t /dev/nullb0 0 sec [0] Running test poll-cancel.t 0 sec [0] Running test poll-cancel.t /dev/nullb0 0 sec [0] Running test poll-cancel-all.t 0 sec [0] Running test poll-cancel-all.t /dev/nullb0 0 sec [0] Running test poll-cancel-ton.t 0 sec [0] Running test poll-cancel-ton.t /dev/nullb0 0 sec [0] Running test poll-link.t 1 sec [0] Running test poll-link.t /dev/nullb0 0 sec [0] Running test poll-many.t 1 sec [1] Running test poll-many.t /dev/nullb0 0 sec [0] Running test poll-mshot-update.t 3 sec [3] Running test poll-mshot-update.t /dev/nullb0 0 sec [0] Running test poll-mshot-overflow.t 0 sec [0] Running test poll-mshot-overflow.t /dev/nullb0 Skipped Running test poll-ring.t 0 sec [0] Running test poll-ring.t /dev/nullb0 0 sec [0] Running test poll-v-poll.t 0 sec [0] Running test poll-v-poll.t /dev/nullb0 1 sec [1] Running test pollfree.t 10 sec [10] Running test pollfree.t /dev/nullb0 0 sec [0] Running test probe.t 0 sec [0] Running test probe.t /dev/nullb0 0 sec [0] Running test read-before-exit.t 0 sec [1] Running test read-before-exit.t /dev/nullb0 0 sec [0] Running test read-write.t 2 sec [2] Running test read-write.t /dev/nullb0 Test read-write.t failed with ret 1 Running test recv-msgall.t 0 sec [0] Running test recv-msgall.t /dev/nullb0 0 sec [0] Running test recv-msgall-stream.t 0 sec [0] Running test recv-msgall-stream.t /dev/nullb0 0 sec [0] Running test recv-multishot.t Test recv-multishot.t failed with ret 1 Running test recv-multishot.t /dev/nullb0 Skipped Running test register-restrictions.t 0 sec [0] Running test register-restrictions.t /dev/nullb0 0 sec [0] Running test rename.t 0 sec [0] Running test rename.t /dev/nullb0 0 sec [0] Running test ringbuf-read.t 0 sec [0] Running test ringbuf-read.t /dev/nullb0 Test ringbuf-read.t failed with ret 1 Running test ring-leak2.t 1 sec [1] Running test ring-leak2.t /dev/nullb0 0 sec [0] Running test ring-leak.t 0 sec [0] Running test ring-leak.t /dev/nullb0 0 sec [0] Running test rsrc_tags.t 14 sec [15] Running test rsrc_tags.t /dev/nullb0 0 sec [0] Running test rw_merge_test.t 0 sec [0] Running test rw_merge_test.t /dev/nullb0 0 sec [0] Running test self.t 0 sec [0] Running test self.t /dev/nullb0 0 sec [0] Running test sendmsg_fs_cve.t 0 sec [0] Running test sendmsg_fs_cve.t /dev/nullb0 0 sec [0] Running test send_recv.t 0 sec [0] Running test send_recv.t /dev/nullb0 0 sec [0] Running test send_recvmsg.t 0 sec [0] Running test send_recvmsg.t /dev/nullb0 0 sec [0] Running test shared-wq.t 0 sec [0] Running test shared-wq.t /dev/nullb0 0 sec [0] Running test short-read.t 0 sec [0] Running test short-read.t /dev/nullb0 0 sec [0] Running test shutdown.t 0 sec [0] Running test shutdown.t /dev/nullb0 0 sec [0] Running test sigfd-deadlock.t 0 sec [0] Running test sigfd-deadlock.t /dev/nullb0 0 sec [0] Running test skip-cqe.t 0 sec [0] Running test skip-cqe.t /dev/nullb0 0 sec [0] Running test socket.t 0 sec [0] Running test socket.t /dev/nullb0 0 sec [0] Running test socket-rw.t 0 sec [0] Running test socket-rw.t /dev/nullb0 0 sec [0] Running test socket-rw-eagain.t 0 sec [0] Running test socket-rw-eagain.t /dev/nullb0 0 sec [0] Running test socket-rw-offset.t 0 sec [0] Running test socket-rw-offset.t /dev/nullb0 0 sec [0] Running test splice.t 0 sec [0] Running test splice.t /dev/nullb0 0 sec [0] Running test sq-full.t 0 sec [0] Running test sq-full.t /dev/nullb0 0 sec [0] Running test sq-full-cpp.t 0 sec [0] Running test sq-full-cpp.t /dev/nullb0 0 sec [0] Running test sqpoll-cancel-hang.t 1 sec [1] Running test sqpoll-cancel-hang.t /dev/nullb0 1 sec [1] Running test sqpoll-disable-exit.t 0 sec [1] Running test sqpoll-disable-exit.t /dev/nullb0 0 sec [0] Running test sq-poll-dup.t 1 sec [1] Running test sq-poll-dup.t /dev/nullb0 0 sec [0] Running test sqpoll-exit-hang.t 1 sec [1] Running test sqpoll-exit-hang.t /dev/nullb0 0 sec [0] Running test sq-poll-kthread.t 2 sec [3] Running test sq-poll-kthread.t /dev/nullb0 0 sec [0] Running test sq-poll-share.t 0 sec [0] Running test sq-poll-share.t /dev/nullb0 0 sec [0] Running test sqpoll-sleep.t 0 sec [0] Running test sqpoll-sleep.t /dev/nullb0 0 sec [0] Running test sq-space_left.t 0 sec [0] Running test sq-space_left.t /dev/nullb0 0 sec [0] Running test stdout.t This is a pipe test This is a fixed pipe test 0 sec [0] Running test stdout.t /dev/nullb0 0 sec [0] Running test submit-and-wait.t 1 sec [1] Running test submit-and-wait.t /dev/nullb0 0 sec [0] Running test submit-link-fail.t 0 sec [0] Running test submit-link-fail.t /dev/nullb0 0 sec [0] Running test submit-reuse.t 0 sec [1] Running test submit-reuse.t /dev/nullb0 0 sec [0] Running test sync-cancel.t 0 sec [0] Running test sync-cancel.t /dev/nullb0 Skipped Running test symlink.t 0 sec [0] Running test symlink.t /dev/nullb0 0 sec [0] Running test teardowns.t 0 sec [0] Running test teardowns.t /dev/nullb0 0 sec [0] Running test thread-exit.t 0 sec [0] Running test thread-exit.t /dev/nullb0 0 sec [0] Running test timeout.t 6 sec [6] Running test timeout.t /dev/nullb0 0 sec [0] Running test timeout-new.t 3 sec [2] Running test timeout-new.t /dev/nullb0 0 sec [0] Running test timeout-overflow.t Skipped Running test timeout-overflow.t /dev/nullb0 Skipped Running test tty-write-dpoll.t 0 sec [0] Running test tty-write-dpoll.t /dev/nullb0 0 sec [0] Running test unlink.t 0 sec [0] Running test unlink.t /dev/nullb0 0 sec [0] Running test wakeup-hang.t 2 sec [2] Running test wakeup-hang.t /dev/nullb0 0 sec [0] Running test xattr.t 0 sec [0] Running test xattr.t /dev/nullb0 0 sec [0] Running test skip-cqe.t 0 sec [0] Running test skip-cqe.t /dev/nullb0 0 sec [0] Running test single-issuer.t 0 sec [0] Running test single-issuer.t /dev/nullb0 Skipped Running test send-zerocopy.t 2 sec [2] Running test send-zerocopy.t /dev/nullb0 Skipped Running test statx.t 0 sec [0] Running test statx.t /dev/nullb0 0 sec [0] Running test sq-full-cpp.t 0 sec [0] Running test sq-full-cpp.t /dev/nullb0 0 sec [0] Tests failed (4): <file-verify.t /dev/nullb0> <read-write.t /dev/nullb0> <recv-multishot.t> <ringbuf-read.t /dev/nullb0> make[1]: Leaving directory '/root/rpmbuild/BUILD/liburing-2.3/test' STDERR:Found 33547264, wanted 0 Buffered novec test failed Data mismatch! bid=14, wanted=14, got=85 test_buf_select nonvec failed not last cqe had error 4 test stream=0 wait_each=0 recvmsg=0 early_error=4 defer=0 failed got 0, wanted 31 dio test failed make[1]: *** [Makefile:231: runtests] Error 1 make: *** [Makefile:21: runtests] Error 2 RETURN:2 [root@storageqe-66 test]# cat config.local TEST_FILES=/dev/nullb0 [root@storageqe-66 test]# [root@storageqe-66 test]# ./ringbuf-read.t /dev/nullb0 got 0, wanted 31 dio test failed [root@storageqe-66 test]# $? -bash: 1: command not found [root@storageqe-66 test]# ./file-verify.t /dev/nullb0 Found 33547264, wanted 0 Buffered novec test failed [root@storageqe-66 test]# $? -bash: 1: command not found [root@storageqe-66 test]# ./ringbuf-read.t /dev/nullb0 got 0, wanted 31 dio test failed [root@storageqe-66 test]#
What module parameters do you set for the null block device (please always include information necessary to reproduce a problem in the bug report)? If you take the defaults, the device does no I/O. That's a problem for some tests, as you've discovered. Try this: modprobe null_blk memory_backed=1 cache_size=256 and re-run your tests. You should find that they now succeed. Let me know if that is not the case.
1.modprobe null_blk submit_queues=16 nr_devices=1 shared_tags=1 # lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 558.9G 0 disk ├─sda1 8:1 0 600M 0 part /boot/efi ├─sda2 8:2 0 1G 0 part /boot └─sda3 8:3 0 557.3G 0 part ├─rhel_storageqe--66-root 253:0 0 70G 0 lvm / ├─rhel_storageqe--66-swap 253:1 0 15.6G 0 lvm [SWAP] └─rhel_storageqe--66-home 253:2 0 471.7G 0 lvm /home sdb 8:16 1 0B 0 disk nullb0 252:0 0 250G 0 disk nvme0n1 259:1 0 1.5T 0 disk 2. build and install liburing-2.3-2.el9.src.rpm 3. [root@storageqe-66 test]# ./ringbuf-read.t /dev/nullb0 got 0, wanted 31 dio test failed [root@storageqe-66 test]# echo $? 1 [root@storageqe-66 test]# ./file-verify.t /dev/nullb0 Found 33547264, wanted 0 Buffered novec test failed [root@storageqe-66 test]# echo $? 1 [root@storageqe-66 test]# ./read-write.t /dev/nullb0 Data mismatch! bid=14, wanted=14, got=85 test_buf_select nonvec failed [root@storageqe-66 test]# echo $? 1 [root@storageqe-66 test]# ./recv-multishot.t /dev/nullb0 [root@storageqe-66 test]# echo $? 77 [root@storageqe-66 test]# [root@storageqe-66 test]# uname -a Linux storageqe-66.rhts.eng.pek2.redhat.com 5.14.0-350.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Aug 4 12:55:29 EDT 2023 x86_64 x86_64 x86_64 GNU/Linux [root@storageqe-66 test]#
Can you test with the module parameters I suggested (in addition to the parameters that you already use).
modprobe null_blk submit_queues=16 nr_devices=1 shared_tags=1 [root@dell-per730-43 test]# ./ringbuf-read.t /dev/nullb0 got 0, wanted 31 dio test failed [root@dell-per730-43 test]# ./file-verify.t /dev/nullb0 Found 32372736, wanted 0 Buffered novec test failed [root@dell-per730-43 test]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 558.4G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 557.4G 0 part ├─rhel_dell--per730--43-root 253:0 0 70G 0 lvm / ├─rhel_dell--per730--43-swap 253:1 0 15.7G 0 lvm [SWAP] └─rhel_dell--per730--43-home 253:2 0 471.7G 0 lvm /home sr0 11:0 1 1024M 0 rom nullb0 252:0 0 250G 0 disk [root@dell-per730-43 test]# modprobe -r null_blk [root@dell-per730-43 test]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 558.4G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 557.4G 0 part ├─rhel_dell--per730--43-root 253:0 0 70G 0 lvm / ├─rhel_dell--per730--43-swap 253:1 0 15.7G 0 lvm [SWAP] └─rhel_dell--per730--43-home 253:2 0 471.7G 0 lvm /home sr0 11:0 1 1024M 0 rom [root@dell-per730-43 test]# modprobe null_blk memory_backed=1 cache_size=256 [root@dell-per730-43 test]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 558.4G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 557.4G 0 part ├─rhel_dell--per730--43-root 253:0 0 70G 0 lvm / ├─rhel_dell--per730--43-swap 253:1 0 15.7G 0 lvm [SWAP] └─rhel_dell--per730--43-home 253:2 0 471.7G 0 lvm /home sr0 11:0 1 1024M 0 rom nullb0 252:0 0 250G 0 disk [root@dell-per730-43 test]# ./ringbuf-read.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./file-verify.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./read-write.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./recv-multishot.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 77: command not found [root@dell-per730-43 test]# [root@dell-per730-43 test]# modprobe null_blk submit_queues=16 nr_devices=1 [root@dell-per730-43 test]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 558.4G 0 disk ├─sda1 8:1 0 1G 0 part /boot └─sda2 8:2 0 557.4G 0 part ├─rhel_dell--per730--43-root 253:0 0 70G 0 lvm / ├─rhel_dell--per730--43-swap 253:1 0 15.7G 0 lvm [SWAP] └─rhel_dell--per730--43-home 253:2 0 471.7G 0 lvm /home sr0 11:0 1 1024M 0 rom nullb0 252:0 0 250G 0 disk [root@dell-per730-43 test]# ./read-write.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./ringbuf-read.t /dev/null0 open: No such file or directory [root@dell-per730-43 test]# [root@dell-per730-43 test]# ./ringbuf-read.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./file-verify.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 0: command not found [root@dell-per730-43 test]# ./recv-multishot.t /dev/nullb0 [root@dell-per730-43 test]# $? -bash: 77: command not found [root@dell-per730-43 test]# looks can not import `shared_tags=1` to the null_blk module.
I'm not sure what you're testing. I was hoping you would specify "memory_backed=1 cache_size=256" on the modprobe command line.
In comment #4, can not hit the error with the "modprobe null_blk memory_backed=1 cache_size=256", but recv-multishot.t testing.
Sorry, I missed the part where you configured null_blk with those parameters. If you run the full test suite using 'make runtests', you will see this: Running test recv-multishot.t 0 sec [1] Running test recv-multishot.t /dev/nullb0 Skipped enum t_test_result { T_EXIT_PASS = 0, T_EXIT_FAIL = 1, T_EXIT_SKIP = 77, }; That 77 return code just means that the test is not valid for this device. I'm going to close this as NOTABUG. Please re-open if I missed something. Thanks!