From 60c3686b816505b6b891fda7b140d5ec52f4d18d Mon Sep 17 00:00:00 2001 From: Karel Zak Date: Tue, 24 Jan 2023 17:38:49 +0100 Subject: [PATCH] lsblk: use sysfs_blkdev_is_removable() Signed-off-by: Karel Zak --- misc-utils/lsblk.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/misc-utils/lsblk.c b/misc-utils/lsblk.c index cbe307a74b..fae918bd3f 100644 --- a/misc-utils/lsblk.c +++ b/misc-utils/lsblk.c @@ -703,21 +703,20 @@ static int is_removable_device(struct lsblk_device *dev, struct lsblk_device *pa if (dev->removable != -1) goto done; - if (ul_path_scanf(dev->sysfs, "removable", "%d", &dev->removable) == 1) - goto done; - if (parent) { + dev->removable = sysfs_blkdev_is_removable(dev->sysfs); + + if (!dev->removable && parent) { pc = sysfs_blkdev_get_parent(dev->sysfs); if (!pc) goto done; - /* dev is partition and parent is whole-disk */ if (pc == parent->sysfs) + /* dev is partition and parent is whole-disk */ dev->removable = is_removable_device(parent, NULL); - - /* parent is something else, use sysfs parent */ - else if (ul_path_scanf(pc, "removable", "%d", &dev->removable) != 1) - dev->removable = 0; + else + /* parent is something else, use sysfs parent */ + dev->removable = sysfs_blkdev_is_removable(pc); } done: if (dev->removable == -1) -- 2.47.3