Re: [PATCH blktests 0/3] blktest: add unmap write zeroes tests
From: Shinichiro Kawasaki
Date: Thu Apr 03 2025 - 03:56:09 EST
On Mar 18, 2025 / 15:28, Zhang Yi wrote:
> From: Zhang Yi <yi.zhang@xxxxxxxxxx>
>
> The Linux kernel is planning to support FALLOC_FL_WRITE_ZEROES in
> fallocate(2). Add tests for the newly added BLK_FEAT_WRITE_ZEROES_UNMAP
> feature flag on the block device queue limit. These tests test block
> device unmap write zeroes sysfs interface
>
> /sys/block/<disk>/queue/write_zeroes_unmap
>
> with various SCSI/NVMe/device-mapper devices.
>
> The /sys/block/<disk>/queue/write_zeroes_unmap interface should return
> 1 if the block device supports unmap write zeroes command, and it should
> return 0 otherwise.
>
> - scsi/010 test SCSI devices.
> - dm/003 test device mapper stacked devices.
> - nvme/060 test NVMe devices.
Zhang, thank you again for the patches. The test contents look meaningful
for me :) When the kernel side changes get ready, I will run the test cases
and do further review.
One thing I noticed is that the patches trigger shellcheck warnings. When you
respin the patches, please run "make check" and address the warnings.
$ make check
shellcheck -x -e SC2119 -f gcc check common/* \
tests/*/rc tests/*/[0-9]*[0-9] src/*.sh
common/rc:624:7: note: Use $(...) notation instead of legacy backticks `...`. [SC2006]
common/rc:626:7: note: Double quote to prevent globbing and word splitting. [SC2086]
common/rc:632:7: warning: Quote this to prevent word splitting. [SC2046]
common/rc:632:7: note: Useless echo? Instead of 'echo $(cmd)', just use 'cmd'. [SC2005]
common/rc:632:7: note: Use $(...) notation instead of legacy backticks `...`. [SC2006]
common/rc:632:17: warning: Quote this to prevent word splitting. [SC2046]
common/rc:632:29: note: Double quote to prevent globbing and word splitting. [SC2086]
tests/dm/003:28:8: warning: Declare and assign separately to avoid masking return values. [SC2155]
tests/nvme/060:32:8: warning: Declare and assign separately to avoid masking return values. [SC2155]
make: *** [Makefile:21: check] Error 1