autofs-5.1.8 - continue expire immediately after submount check From: Ian Kent The expire proc for both direct and indirect mounts doesn't immediately continue after seeing an autofs submount and sending it a notification. Add the "continue" to avoid some wasted overhead. Signed-off-by: Ian Kent --- CHANGELOG | 1 + daemon/direct.c | 5 ++++- daemon/indirect.c | 5 ++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index ba6bab3b..0bfd0720 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -75,6 +75,7 @@ - fix fix mount tree startup reconnect. - fix amd selector function matching. - get rid entry thid field. +- continue expire immediately after submount check. 19/10/2021 autofs-5.1.8 - add xdr_exports(). diff --git a/daemon/direct.c b/daemon/direct.c index 2a199af4..f4988543 100644 --- a/daemon/direct.c +++ b/daemon/direct.c @@ -856,8 +856,11 @@ void *expire_proc_direct(void *arg) * one of them and pass on state change. */ pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cur_state); - if (mnt->flags & MNTS_AUTOFS) + if (mnt->flags & MNTS_AUTOFS) { master_notify_submount(ap, mnt->mp, ap->state); + pthread_setcancelstate(cur_state, NULL); + continue; + } if (me->ioctlfd == -1) { pthread_setcancelstate(cur_state, NULL); diff --git a/daemon/indirect.c b/daemon/indirect.c index 47d866eb..469cf50a 100644 --- a/daemon/indirect.c +++ b/daemon/indirect.c @@ -401,8 +401,11 @@ void *expire_proc_indirect(void *arg) * one of them and pass on the state change. */ pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cur_state); - if (mnt->flags & MNTS_AUTOFS) + if (mnt->flags & MNTS_AUTOFS) { master_notify_submount(ap, mnt->mp, ap->state); + pthread_setcancelstate(cur_state, NULL); + continue; + } /* An offset without a real mount, check for manual umount */ if (mnt->flags & MNTS_OFFSET &&