Non-partitionable devices, like zoned block devices, aren't showing up in in /proc/partitions and therefore we cannot rely on it to get a device's size. Use blockdev --getsz to get the block device size. Cc: Naohiro Aota <naohiro.aota@xxxxxxx> Signed-off-by: Johannes Thumshirn <johannes.thumshirn@xxxxxxx> --- Changes to v2: - Don't forget the sectors to kb conversion (Damien) Changes to v1: - Use blockdev --getsz instead of sysfs (Nikolay/Damien) --- common/rc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/rc b/common/rc index 1c814b9aabf1..2f295fa05484 100644 --- a/common/rc +++ b/common/rc @@ -3778,7 +3778,7 @@ _get_available_space() # return device size in kb _get_device_size() { - grep -w `_short_dev $1` /proc/partitions | awk '{print $3}' + echo $(($(blockdev --getsz $1) >> 1)) } # Make sure we actually have dmesg checking set up. -- 2.30.0