common/rc: fix device size parser
authorDennis Zhou <dennis@kernel.org>
Wed, 11 Dec 2019 20:18:30 +0000 (12:18 -0800)
committerEryu Guan <guaneryu@gmail.com>
Sun, 15 Dec 2019 16:38:28 +0000 (00:38 +0800)
If you have multiple devices that share the same regex (eg dm-1, dm10),
then _get_device_size() can return "$size\n$size" which causes the
following error for btrfs/011.

    QA output created by 011
    ./common/rc: line 3084: [: too many arguments

So, fix this by making grep check against whole word.

Signed-off-by: Dennis Zhou <dennis@kernel.org>
Reviewed-by: Eryu Guan <guaneryu@gmail.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
common/rc

index 5cdd829b26c8fba27c2eac5515661ef9ccd0b552..816588d6223e38e536c818c7bb1c399b1346e6c9 100644 (file)
--- a/common/rc
+++ b/common/rc
@@ -3583,7 +3583,7 @@ _get_available_space()
 # return device size in kb
 _get_device_size()
 {
 # return device size in kb
 _get_device_size()
 {
-       grep `_short_dev $1` /proc/partitions | awk '{print $3}'
+       grep -w `_short_dev $1` /proc/partitions | awk '{print $3}'
 }
 
 # Make sure we actually have dmesg checking set up.
 }
 
 # Make sure we actually have dmesg checking set up.