diff --git a/src/core/mount.c b/src/core/mount.c index d0352c933f..477c2cbafa 100644 --- a/src/core/mount.c +++ b/src/core/mount.c @@ -1533,7 +1533,9 @@ static int mount_setup_existing_unit( MOUNT(u)->from_proc_self_mountinfo = true; - if (u->load_state == UNIT_NOT_FOUND) { + if (IN_SET(u->load_state, UNIT_NOT_FOUND, UNIT_BAD_SETTING, UNIT_ERROR)) { + /* The unit was previously not found or otherwise not loaded. Now that the unit shows up in + * /proc/self/mountinfo we should reconsider it this, hence set it to UNIT_LOADED. */ u->load_state = UNIT_LOADED; u->load_error = 0;