diff options
author | Mike Yuan <me@yhndnzj.com> | 2024-03-21 18:22:31 +0100 |
---|---|---|
committer | Mike Yuan <me@yhndnzj.com> | 2024-03-21 18:36:37 +0100 |
commit | e9fa1bf704ad2f0a7e257e29889315118b0df459 (patch) | |
tree | dd4338c1050cee3f010aa45c929148ccd1c705fe /src/core/device.c | |
parent | Merge pull request #31880 from yuwata/network-varlink-trivial-cleanups (diff) | |
download | systemd-e9fa1bf704ad2f0a7e257e29889315118b0df459.tar.xz systemd-e9fa1bf704ad2f0a7e257e29889315118b0df459.zip |
core: use ASSERT_PTR(CAST(u)) everywhere
Diffstat (limited to 'src/core/device.c')
-rw-r--r-- | src/core/device.c | 72 |
1 files changed, 31 insertions, 41 deletions
diff --git a/src/core/device.c b/src/core/device.c index 6b2d7c3e24..93cab92b8c 100644 --- a/src/core/device.c +++ b/src/core/device.c @@ -119,10 +119,9 @@ static int device_set_sysfs(Device *d, const char *sysfs) { } static void device_init(Unit *u) { - Device *d = DEVICE(u); + Device *d = ASSERT_PTR(DEVICE(u)); - assert(d); - assert(UNIT(d)->load_state == UNIT_STUB); + assert(u->load_state == UNIT_STUB); /* In contrast to all other unit types we timeout jobs waiting * for devices by default. This is because they otherwise wait @@ -137,9 +136,7 @@ static void device_init(Unit *u) { } static void device_done(Unit *u) { - Device *d = DEVICE(u); - - assert(d); + Device *d = ASSERT_PTR(DEVICE(u)); device_unset_sysfs(d); d->deserialized_sysfs = mfree(d->deserialized_sysfs); @@ -258,9 +255,8 @@ static void device_update_found_by_name(Manager *m, const char *path, DeviceFoun } static int device_coldplug(Unit *u) { - Device *d = DEVICE(u); + Device *d = ASSERT_PTR(DEVICE(u)); - assert(d); assert(d->state == DEVICE_DEAD); /* First, let's put the deserialized state and found mask into effect, if we have it. */ @@ -336,9 +332,7 @@ static int device_coldplug(Unit *u) { } static void device_catchup(Unit *u) { - Device *d = DEVICE(u); - - assert(d); + Device *d = ASSERT_PTR(DEVICE(u)); /* Second, let's update the state with the enumerated state */ device_update_found_one(d, d->enumerated_found, DEVICE_FOUND_MASK); @@ -405,11 +399,9 @@ static int device_found_from_string_many(const char *name, DeviceFound *ret) { } static int device_serialize(Unit *u, FILE *f, FDSet *fds) { + Device *d = ASSERT_PTR(DEVICE(u)); _cleanup_free_ char *s = NULL; - Device *d = DEVICE(u); - assert(d); - assert(u); assert(f); assert(fds); @@ -428,11 +420,9 @@ static int device_serialize(Unit *u, FILE *f, FDSet *fds) { } static int device_deserialize_item(Unit *u, const char *key, const char *value, FDSet *fds) { - Device *d = DEVICE(u); + Device *d = ASSERT_PTR(DEVICE(u)); int r; - assert(d); - assert(u); assert(key); assert(value); assert(fds); @@ -472,10 +462,11 @@ static int device_deserialize_item(Unit *u, const char *key, const char *value, } static void device_dump(Unit *u, FILE *f, const char *prefix) { - Device *d = DEVICE(u); + Device *d = ASSERT_PTR(DEVICE(u)); _cleanup_free_ char *s = NULL; - assert(d); + assert(f); + assert(prefix); (void) device_found_to_string_many(d->found, &s); @@ -495,15 +486,15 @@ static void device_dump(Unit *u, FILE *f, const char *prefix) { } static UnitActiveState device_active_state(Unit *u) { - assert(u); + Device *d = ASSERT_PTR(DEVICE(u)); - return state_translation_table[DEVICE(u)->state]; + return state_translation_table[d->state]; } static const char *device_sub_state_to_string(Unit *u) { - assert(u); + Device *d = ASSERT_PTR(DEVICE(u)); - return device_state_to_string(DEVICE(u)->state); + return device_state_to_string(d->state); } static int device_update_description(Unit *u, sd_device *dev, const char *path) { @@ -538,12 +529,11 @@ static int device_update_description(Unit *u, sd_device *dev, const char *path) } static int device_add_udev_wants(Unit *u, sd_device *dev) { + Device *d = ASSERT_PTR(DEVICE(u)); _cleanup_strv_free_ char **added = NULL; const char *wants, *property; - Device *d = DEVICE(u); int r; - assert(d); assert(dev); property = MANAGER_IS_USER(u->manager) ? "SYSTEMD_USER_WANTS" : "SYSTEMD_WANTS"; @@ -646,6 +636,8 @@ static void device_upgrade_mount_deps(Unit *u) { /* Let's upgrade Requires= to BindsTo= on us. (Used when SYSTEMD_MOUNT_DEVICE_BOUND is set) */ + assert(u); + HASHMAP_FOREACH_KEY(v, other, unit_get_dependencies(u, UNIT_REQUIRED_BY)) { if (other->type != UNIT_MOUNT) continue; @@ -706,16 +698,18 @@ static int device_setup_unit(Manager *m, sd_device *dev, const char *path, bool unit_add_to_load_queue(u); } - if (!DEVICE(u)->path) { - DEVICE(u)->path = strdup(path); - if (!DEVICE(u)->path) + Device *d = ASSERT_PTR(DEVICE(u)); + + if (!d->path) { + d->path = strdup(path); + if (!d->path) return log_oom(); } /* If this was created via some dependency and has not actually been seen yet ->sysfs will not be * initialized. Hence initialize it if necessary. */ if (sysfs) { - r = device_set_sysfs(DEVICE(u), sysfs); + r = device_set_sysfs(d, sysfs); if (r < 0) return log_unit_error_errno(u, r, "Failed to set sysfs path %s: %m", sysfs); @@ -730,11 +724,11 @@ static int device_setup_unit(Manager *m, sd_device *dev, const char *path, bool * by systemd before the device appears on its radar. In this case the device unit is partially * initialized and includes the deps on the mount unit but at that time the "bind mounts" flag wasn't * present. Fix this up now. */ - if (dev && device_is_bound_by_mounts(DEVICE(u), dev)) + if (dev && device_is_bound_by_mounts(d, dev)) device_upgrade_mount_deps(u); if (units) { - r = set_ensure_put(units, NULL, DEVICE(u)); + r = set_ensure_put(units, NULL, d); if (r < 0) return log_unit_error_errno(u, r, "Failed to store unit: %m"); } @@ -950,10 +944,7 @@ static int device_setup_units(Manager *m, sd_device *dev, Set **ready_units, Set } static Unit *device_following(Unit *u) { - Device *d = DEVICE(u); - Device *first = NULL; - - assert(d); + Device *d = ASSERT_PTR(DEVICE(u)), *first = NULL; if (startswith(u->id, "sys-")) return NULL; @@ -973,16 +964,15 @@ static Unit *device_following(Unit *u) { return UNIT(first); } -static int device_following_set(Unit *u, Set **_set) { - Device *d = DEVICE(u); +static int device_following_set(Unit *u, Set **ret) { + Device *d = ASSERT_PTR(DEVICE(u)); _cleanup_set_free_ Set *set = NULL; int r; - assert(d); - assert(_set); + assert(ret); if (LIST_JUST_US(same_sysfs, d)) { - *_set = NULL; + *ret = NULL; return 0; } @@ -1002,7 +992,7 @@ static int device_following_set(Unit *u, Set **_set) { return r; } - *_set = TAKE_PTR(set); + *ret = TAKE_PTR(set); return 1; } |