diff options
author | Lennart Poettering <lennart@poettering.net> | 2022-04-13 16:13:10 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2022-04-13 16:26:31 +0200 |
commit | ec61371fe656dff339024e0d843c36fc2f36cf8b (patch) | |
tree | 311b3ce9d5e7d3bc2f8baafb4d657eb79586250c /src/hibernate-resume/hibernate-resume.c | |
parent | 7176f06c9efea4b86f3f55e448fc80e16d43e54b (diff) | |
download | systemd-ec61371fe656dff339024e0d843c36fc2f36cf8b.tar.gz |
devnum-util: define helper macros for formatting devnum major/minor pairs
And port some parts over.
Diffstat (limited to 'src/hibernate-resume/hibernate-resume.c')
-rw-r--r-- | src/hibernate-resume/hibernate-resume.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/hibernate-resume/hibernate-resume.c b/src/hibernate-resume/hibernate-resume.c index 58e35e403e..1c7d9179d8 100644 --- a/src/hibernate-resume/hibernate-resume.c +++ b/src/hibernate-resume/hibernate-resume.c @@ -5,6 +5,7 @@ #include <sys/stat.h> #include "alloc-util.h" +#include "devnum-util.h" #include "fileio.h" #include "log.h" #include "util.h" @@ -12,7 +13,6 @@ int main(int argc, char *argv[]) { struct stat st; const char *device; - _cleanup_free_ char *major_minor = NULL; int r; if (argc != 2) { @@ -40,14 +40,9 @@ int main(int argc, char *argv[]) { return EXIT_FAILURE; } - if (asprintf(&major_minor, "%d:%d", major(st.st_rdev), minor(st.st_rdev)) < 0) { - log_oom(); - return EXIT_FAILURE; - } - - r = write_string_file("/sys/power/resume", major_minor, WRITE_STRING_FILE_DISABLE_BUFFER); + r = write_string_file("/sys/power/resume", FORMAT_DEVNUM(st.st_rdev), WRITE_STRING_FILE_DISABLE_BUFFER); if (r < 0) { - log_error_errno(r, "Failed to write '%s' to /sys/power/resume: %m", major_minor); + log_error_errno(r, "Failed to write '" DEVNUM_FORMAT_STR "' to /sys/power/resume: %m", DEVNUM_FORMAT_VAL(st.st_rdev)); return EXIT_FAILURE; } @@ -58,6 +53,6 @@ int main(int argc, char *argv[]) { * no hibernation image). */ - log_info("Could not resume from '%s' (%s).", device, major_minor); + log_info("Could not resume from '%s' (" DEVNUM_FORMAT_STR ").", device, DEVNUM_FORMAT_VAL(st.st_rdev)); return EXIT_SUCCESS; } |