diff options
author | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2021-08-03 16:49:05 +0200 |
---|---|---|
committer | Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> | 2021-08-07 09:01:41 +0200 |
commit | d340bdd1bd435e9f5524f4246feaf38511b2ff45 (patch) | |
tree | c236d8a6eb534360f4077cc3e533a4046004aa36 /src/udev | |
parent | d3d2e3abda33ef0fa88628f749c04dc77e878275 (diff) | |
download | systemd-d340bdd1bd435e9f5524f4246feaf38511b2ff45.tar.gz |
udev/builtins: make skip_subsystem() and skip_virtio() alike
The two functions do not implement identical logic, so they shouldn't
have identical structure, but let's make them both a bit simpler and
more alike.
Diffstat (limited to 'src/udev')
-rw-r--r-- | src/udev/udev-builtin-net_id.c | 10 | ||||
-rw-r--r-- | src/udev/udev-builtin-path_id.c | 9 |
2 files changed, 7 insertions, 12 deletions
diff --git a/src/udev/udev-builtin-net_id.c b/src/udev/udev-builtin-net_id.c index 92917852ba..0aede28f7d 100644 --- a/src/udev/udev-builtin-net_id.c +++ b/src/udev/udev-builtin-net_id.c @@ -78,25 +78,23 @@ struct virtfn_info { /* skip intermediate virtio devices */ static sd_device *skip_virtio(sd_device *dev) { - sd_device *parent; - /* there can only ever be one virtio bus per parent device, so we can * safely ignore any virtio buses. see * http://lists.linuxfoundation.org/pipermail/virtualization/2015-August/030331.html */ - for (parent = dev; parent; ) { + while (dev) { const char *subsystem; - if (sd_device_get_subsystem(parent, &subsystem) < 0) + if (sd_device_get_subsystem(dev, &subsystem) < 0) break; if (!streq(subsystem, "virtio")) break; - if (sd_device_get_parent(parent, &parent) < 0) + if (sd_device_get_parent(dev, &dev) < 0) return NULL; } - return parent; + return dev; } static int get_virtfn_info(sd_device *dev, struct netnames *names, struct virtfn_info *ret) { diff --git a/src/udev/udev-builtin-path_id.c b/src/udev/udev-builtin-path_id.c index effc36f36a..083ce67803 100644 --- a/src/udev/udev-builtin-path_id.c +++ b/src/udev/udev-builtin-path_id.c @@ -80,22 +80,19 @@ static int format_lun_number(sd_device *dev, char **path) { } static sd_device *skip_subsystem(sd_device *dev, const char *subsys) { - sd_device *parent; - assert(dev); assert(subsys); - for (parent = dev; ; ) { + for (;;) { const char *subsystem; - if (sd_device_get_subsystem(parent, &subsystem) < 0) + if (sd_device_get_subsystem(dev, &subsystem) < 0) break; if (!streq(subsystem, subsys)) break; - dev = parent; - if (sd_device_get_parent(dev, &parent) < 0) + if (sd_device_get_parent(dev, &dev) < 0) break; } |