diff options
Diffstat (limited to 'src/mount.c')
-rw-r--r-- | src/mount.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mount.c b/src/mount.c index bee3c9a60e..c1a1d51141 100644 --- a/src/mount.c +++ b/src/mount.c @@ -1538,6 +1538,17 @@ finish: return r; } +static void mount_reset_maintenance(Unit *u) { + Mount *m = MOUNT(u); + + assert(m); + + if (m->state == MOUNT_MAINTENANCE) + mount_set_state(m, MOUNT_DEAD); + + m->failure = false; +} + static const char* const mount_state_table[_MOUNT_STATE_MAX] = { [MOUNT_DEAD] = "dead", [MOUNT_MOUNTING] = "mounting", @@ -1595,6 +1606,8 @@ const UnitVTable mount_vtable = { .sigchld_event = mount_sigchld_event, .timer_event = mount_timer_event, + .reset_maintenance = mount_reset_maintenance, + .bus_message_handler = bus_mount_message_handler, .enumerate = mount_enumerate, |