From becbcca5b829f5ed56b53c0db62d2b505b30997a Mon Sep 17 00:00:00 2001 From: Yu Watanabe Date: Thu, 31 Mar 2022 03:27:17 +0900 Subject: [PATCH] sd-device: try to get DISKSEQ from uevent file Otherwise, if the sd-device object is created from e.g. syspath, then sd_device_get_diskseq() returns -ENOENT. --- src/libsystemd/sd-device/sd-device.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/libsystemd/sd-device/sd-device.c b/src/libsystemd/sd-device/sd-device.c index e7d398dbb0a..545a0f5a5d7 100644 --- a/src/libsystemd/sd-device/sd-device.c +++ b/src/libsystemd/sd-device/sd-device.c @@ -1138,8 +1138,14 @@ _public_ int sd_device_get_seqnum(sd_device *device, uint64_t *ret) { } _public_ int sd_device_get_diskseq(sd_device *device, uint64_t *ret) { + int r; + assert_return(device, -EINVAL); + r = device_read_uevent_file(device); + if (r < 0) + return r; + if (device->diskseq == 0) return -ENOENT;