]> git.apps.os.sepia.ceph.com Git - xfstests-dev.git/commitdiff
generic/108: use sysfs values for logical,physical block size in scsi_debug
authorNitesh Shetty <nj.shetty@samsung.com>
Tue, 1 Mar 2022 21:29:47 +0000 (02:59 +0530)
committerEryu Guan <guaneryu@gmail.com>
Sun, 20 Mar 2022 16:23:08 +0000 (00:23 +0800)
scsi_debug device used for test, is created with assumption of 512
bytes logical and physical block size.

This causes error in lvcreate step, when SCRATCH_DEV device lba is
not 512 bytes. This can be solved by reading block size from sysfs
of device.  If sysfs is missing fallback to 512 bytes as default.

Signed-off-by: Nitesh Shetty <nj.shetty@samsung.com>
Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
tests/generic/108

index ad43269f50e82c9886521a109c8fcc590a581747..db0e9bd0572ff401ca67f848224be97b22fe1ad5 100755 (executable)
@@ -42,8 +42,11 @@ _require_non_zoned_device $SCRATCH_DEV
 lvname=lv_$seq
 vgname=vg_$seq
 
+physical=$(cat /sys/block/$(_short_dev $SCRATCH_DEV)/queue/physical_block_size)
+logical=$(cat /sys/block/$(_short_dev $SCRATCH_DEV)/queue/logical_block_size)
+
 # _get_scsi_debug_dev returns a scsi debug device with 128M in size by default
-SCSI_DEBUG_DEV=`_get_scsi_debug_dev 512 512 0 300`
+SCSI_DEBUG_DEV=`_get_scsi_debug_dev ${physical:-512} ${logical:-512} 0 300`
 test -b "$SCSI_DEBUG_DEV" || _notrun "Failed to initialize scsi debug device"
 echo "SCSI debug device $SCSI_DEBUG_DEV" >>$seqres.full