udev: use block_device_get_whole_disk()

This should not change anything effectively.
This commit is contained in:
Yu Watanabe
2022-09-18 23:30:21 +09:00
parent 5a27af52c7
commit 8f71534e06
+7 -17
View File
@@ -473,13 +473,6 @@ static int device_get_whole_disk(sd_device *dev, sd_device **ret_device, const c
if (device_for_action(dev, SD_DEVICE_REMOVE))
goto irrelevant;
r = sd_device_get_subsystem(dev, &val);
if (r < 0)
return log_device_debug_errno(dev, r, "Failed to get subsystem: %m");
if (!streq(val, "block"))
goto irrelevant;
r = sd_device_get_sysname(dev, &val);
if (r < 0)
return log_device_debug_errno(dev, r, "Failed to get sysname: %m");
@@ -493,16 +486,13 @@ static int device_get_whole_disk(sd_device *dev, sd_device **ret_device, const c
if (STARTSWITH_SET(val, "dm-", "md", "drbd"))
goto irrelevant;
r = sd_device_get_devtype(dev, &val);
if (r < 0 && r != -ENOENT)
return log_device_debug_errno(dev, r, "Failed to get devtype: %m");
if (r >= 0 && streq(val, "partition")) {
r = sd_device_get_parent(dev, &dev);
if (r == -ENOENT) /* The device may be already removed. */
goto irrelevant;
if (r < 0)
return log_device_debug_errno(dev, r, "Failed to get parent device: %m");
}
r = block_device_get_whole_disk(dev, &dev);
if (IN_SET(r,
-ENOTBLK, /* The device is not a block device. */
-ENODEV /* The whole disk device was not found, it may already be removed. */))
goto irrelevant;
if (r < 0)
return log_device_debug_errno(dev, r, "Failed to get whole disk device: %m");
r = sd_device_get_devname(dev, &val);
if (r == -ENOENT)