autofs-5.1.2 - don't return until after master map retry read From: Ian Kent The master map read retry needs to be done before returning success at startup or there can be problems trying to access automount mounts before they are mounted. Signed-off-by: Ian Kent --- CHANGELOG | 1 + daemon/automount.c | 31 ++++++++++--------------------- 2 files changed, 11 insertions(+), 21 deletions(-) --- autofs-5.0.7.orig/CHANGELOG +++ autofs-5.0.7/CHANGELOG @@ -211,6 +211,7 @@ - fix included master map not found return. - dont exit on master map read fail timeout. - set sane default master read wait timeout. +- don't return until after master map retry read. 25/07/2012 autofs-5.0.7 ======================= --- autofs-5.0.7.orig/daemon/automount.c +++ autofs-5.0.7/daemon/automount.c @@ -2483,27 +2483,6 @@ int main(int argc, char *argv[]) master_read = master_read_master(master_list, age, 0); if (!master_read) { - if (foreground) - logerr("%s: failed to read master map, " - "will retry!", - program); - else - logerr("%s: failed to read master map, " - "will retry in background!", - program); - } - - /* - * Mmm ... reset force unlink umount so we don't also do this - * in future when we receive a HUP signal. - */ - do_force_unlink = 0; - - st_stat = 0; - res = write(start_pipefd[1], pst_stat, sizeof(*pst_stat)); - close(start_pipefd[1]); - - if (!master_read) { /* * Read master map, waiting until it is available, unless * a signal is received, in which case exit returning an @@ -2521,6 +2500,16 @@ int main(int argc, char *argv[]) } } + /* + * Mmm ... reset force unlink umount so we don't also do this + * in future when we receive a HUP signal. + */ + do_force_unlink = 0; + + st_stat = 0; + res = write(start_pipefd[1], pst_stat, sizeof(*pst_stat)); + close(start_pipefd[1]); + state_mach_thid = pthread_self(); statemachine(NULL);