diff options
author | Lennart Poettering <lennart@poettering.net> | 2021-06-02 15:49:10 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2021-06-03 15:01:05 +0200 |
commit | e82c6e8b6230b237c838f053d52baa3297668eaa (patch) | |
tree | c9dc45a24db369591e33fa59d2e2dd4fdbac954c /src/core/swap.c | |
parent | 6aeb8c89bab2cf8055128dd091b9ad58cdeb71c2 (diff) | |
download | systemd-e82c6e8b6230b237c838f053d52baa3297668eaa.tar.gz |
pid1: don't choke on overly long device paths
This mimics what we do for device units: if there's a device we cannot
synthesize a good swap unit name for, then proceed without failure.
Diffstat (limited to 'src/core/swap.c')
-rw-r--r-- | src/core/swap.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/core/swap.c b/src/core/swap.c index fc781a3815..8aecc391e7 100644 --- a/src/core/swap.c +++ b/src/core/swap.c @@ -1426,13 +1426,14 @@ int swap_process_device_new(Manager *m, sd_device *dev) { assert(m); assert(dev); - r = sd_device_get_devname(dev, &dn); - if (r < 0) + if (sd_device_get_devname(dev, &dn) < 0) return 0; r = unit_name_from_path(dn, ".swap", &e); - if (r < 0) - return r; + if (r < 0) { + log_debug_errno(r, "Cannot convert device name '%s' to unit name, ignoring: %m", dn); + return 0; + } u = manager_get_unit(m, e); if (u) |