mirror of
https://github.com/systemd/systemd.git
synced 2024-11-01 17:51:22 +03:00
mount: don't propagate errors from mount_setup_unit() further up
If we can't process a specific line in /proc/self/mountinfo we should log about it (which we do), but this should not affect other lines, nor further processing of mount units. Let's keep these failures local. Fixes: #10874
This commit is contained in:
parent
3f459cd96e
commit
ba0d56f55f
@ -1614,7 +1614,7 @@ fail:
|
||||
static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) {
|
||||
_cleanup_(mnt_free_tablep) struct libmnt_table *t = NULL;
|
||||
_cleanup_(mnt_free_iterp) struct libmnt_iter *i = NULL;
|
||||
int r = 0;
|
||||
int r;
|
||||
|
||||
assert(m);
|
||||
|
||||
@ -1627,7 +1627,6 @@ static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) {
|
||||
if (r < 0)
|
||||
return log_error_errno(r, "Failed to parse /proc/self/mountinfo: %m");
|
||||
|
||||
r = 0;
|
||||
for (;;) {
|
||||
struct libmnt_fs *fs;
|
||||
const char *device, *path, *options, *fstype;
|
||||
@ -1656,12 +1655,10 @@ static int mount_load_proc_self_mountinfo(Manager *m, bool set_flags) {
|
||||
|
||||
device_found_node(m, d, DEVICE_FOUND_MOUNT, DEVICE_FOUND_MOUNT);
|
||||
|
||||
k = mount_setup_unit(m, d, p, options, fstype, set_flags);
|
||||
if (r == 0 && k < 0)
|
||||
r = k;
|
||||
(void) mount_setup_unit(m, d, p, options, fstype, set_flags);
|
||||
}
|
||||
|
||||
return r;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void mount_shutdown(Manager *m) {
|
||||
|
Loading…
Reference in New Issue
Block a user