summaryrefslogtreecommitdiff
path: root/src/core/swap.c
diff options
context:
space:
mode:
authorYu Watanabe <watanabe.yu+github@gmail.com>2022-08-28 05:56:25 +0900
committerYu Watanabe <watanabe.yu+github@gmail.com>2022-08-28 10:10:50 +0900
commitca8228295ec20e561119729a2cf117e4531d7f56 (patch)
treed31f8189834a0f126b68dcdb976b66bd4ffdbd23 /src/core/swap.c
parent42899bcee5a7ed08640e0f958fd9b48e5b21eb3d (diff)
downloadsystemd-ca8228295ec20e561119729a2cf117e4531d7f56.tar.gz
tree-wide: use devpath_from_devnum() and device_open_from_devnum()
Fixes #24465.
Diffstat (limited to 'src/core/swap.c')
-rw-r--r--src/core/swap.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/core/swap.c b/src/core/swap.c
index 2d1190d018..f5c65dc312 100644
--- a/src/core/swap.c
+++ b/src/core/swap.c
@@ -295,9 +295,8 @@ static int swap_verify(Swap *s) {
}
static int swap_load_devnode(Swap *s) {
- _cleanup_(sd_device_unrefp) sd_device *d = NULL;
+ _cleanup_free_ char *p = NULL;
struct stat st;
- const char *p;
int r;
assert(s);
@@ -305,16 +304,13 @@ static int swap_load_devnode(Swap *s) {
if (stat(s->what, &st) < 0 || !S_ISBLK(st.st_mode))
return 0;
- r = sd_device_new_from_stat_rdev(&d, &st);
+ r = devpath_from_devnum(S_IFBLK, st.st_rdev, &p);
if (r < 0) {
log_unit_full_errno(UNIT(s), r == -ENOENT ? LOG_DEBUG : LOG_WARNING, r,
- "Failed to allocate device for swap %s: %m", s->what);
+ "Failed to get device node for swap %s: %m", s->what);
return 0;
}
- if (sd_device_get_devname(d, &p) < 0)
- return 0;
-
return swap_set_devnode(s, p);
}