From: Yu Watanabe Date: Wed, 22 Aug 2018 05:39:12 +0000 (+0900) Subject: core/umount: replace udev_device by sd_device X-Git-Tag: v240~812^2~5 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6bcf00eda33afbfe8fc43db72cea051b92ba42e8;p=platform%2Fupstream%2Fsystemd.git core/umount: replace udev_device by sd_device --- diff --git a/src/core/umount.c b/src/core/umount.c index 8ed1074..f1779e2 100644 --- a/src/core/umount.c +++ b/src/core/umount.c @@ -13,11 +13,12 @@ /* This needs to be after sys/mount.h :( */ #include -#include "libudev.h" +#include "sd-device.h" #include "alloc-util.h" #include "blockdev-util.h" #include "def.h" +#include "device-enumerator-private.h" #include "escape.h" #include "fd-util.h" #include "fstab-util.h" @@ -28,7 +29,6 @@ #include "process-util.h" #include "signal-util.h" #include "string-util.h" -#include "udev-util.h" #include "umount.h" #include "util.h" #include "virt.h" @@ -229,49 +229,41 @@ int swap_list_get(const char *swaps, MountPoint **head) { } static int loopback_list_get(MountPoint **head) { - _cleanup_(udev_enumerate_unrefp) struct udev_enumerate *e = NULL; - struct udev_list_entry *item = NULL, *first = NULL; - _cleanup_(udev_unrefp) struct udev *udev = NULL; + _cleanup_(sd_device_enumerator_unrefp) sd_device_enumerator *e = NULL; + sd_device *d; int r; assert(head); - udev = udev_new(); - if (!udev) - return -ENOMEM; + r = sd_device_enumerator_new(&e); + if (r < 0) + return r; - e = udev_enumerate_new(udev); - if (!e) - return -ENOMEM; + r = sd_device_enumerator_allow_uninitialized(e); + if (r < 0) + return r; - r = udev_enumerate_add_match_subsystem(e, "block"); + r = sd_device_enumerator_add_match_subsystem(e, "block", true); if (r < 0) return r; - r = udev_enumerate_add_match_sysname(e, "loop*"); + r = sd_device_enumerator_add_match_sysname(e, "loop*"); if (r < 0) return r; - r = udev_enumerate_add_match_sysattr(e, "loop/backing_file", NULL); + r = sd_device_enumerator_add_match_sysattr(e, "loop/backing_file", NULL, true); if (r < 0) return r; - r = udev_enumerate_scan_devices(e); + r = device_enumerator_scan_devices(e); if (r < 0) return r; - first = udev_enumerate_get_list_entry(e); - udev_list_entry_foreach(item, first) { - _cleanup_(udev_device_unrefp) struct udev_device *d; - const char *dn; + FOREACH_DEVICE_AND_SUBSYSTEM(e, d) { _cleanup_free_ MountPoint *lb = NULL; + const char *dn; - d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item)); - if (!d) - return -ENOMEM; - - dn = udev_device_get_devnode(d); - if (!dn) + if (sd_device_get_devname(d, &dn) < 0) continue; lb = new0(MountPoint, 1); @@ -290,47 +282,41 @@ static int loopback_list_get(MountPoint **head) { } static int dm_list_get(MountPoint **head) { - _cleanup_(udev_enumerate_unrefp) struct udev_enumerate *e = NULL; - struct udev_list_entry *item = NULL, *first = NULL; - _cleanup_(udev_unrefp) struct udev *udev = NULL; + _cleanup_(sd_device_enumerator_unrefp) sd_device_enumerator *e = NULL; + sd_device *d; int r; assert(head); - udev = udev_new(); - if (!udev) - return -ENOMEM; + r = sd_device_enumerator_new(&e); + if (r < 0) + return r; - e = udev_enumerate_new(udev); - if (!e) - return -ENOMEM; + r = sd_device_enumerator_allow_uninitialized(e); + if (r < 0) + return r; - r = udev_enumerate_add_match_subsystem(e, "block"); + r = sd_device_enumerator_add_match_subsystem(e, "block", true); if (r < 0) return r; - r = udev_enumerate_add_match_sysname(e, "dm-*"); + r = sd_device_enumerator_add_match_sysname(e, "dm-*"); if (r < 0) return r; - r = udev_enumerate_scan_devices(e); + r = device_enumerator_scan_devices(e); if (r < 0) return r; - first = udev_enumerate_get_list_entry(e); - udev_list_entry_foreach(item, first) { - _cleanup_(udev_device_unrefp) struct udev_device *d; - dev_t devnum; - const char *dn; + FOREACH_DEVICE_AND_SUBSYSTEM(e, d) { _cleanup_free_ MountPoint *m = NULL; + const char *dn; + dev_t devnum; - d = udev_device_new_from_syspath(udev, udev_list_entry_get_name(item)); - if (!d) - return -ENOMEM; + if (sd_device_get_devnum(d, &devnum) < 0) + continue; - devnum = udev_device_get_devnum(d); - dn = udev_device_get_devnode(d); - if (major(devnum) == 0 || !dn) + if (sd_device_get_devname(d, &dn) < 0) continue; m = new0(MountPoint, 1);