Hello community, here is the log from the commit of package autofs for openSUSE:Factory checked in at 2013-04-12 20:19:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/autofs (Old) and /work/SRC/openSUSE:Factory/.autofs.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "autofs", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/autofs/autofs.changes 2013-03-19 12:10:47.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.autofs.new/autofs.changes 2013-04-12 20:20:01.000000000 +0200 @@ -1,0 +2,6 @@ +Tue Apr 9 20:43:54 UTC 2013 - [email protected] + +- autofs-5.0.7-fix-submount-tree-not-all-expiring.patch: expire + multiple levels of recursive mounts correctly (bnc#801808) + +------------------------------------------------------------------- New: ---- autofs-5.0.7-fix-submount-tree-not-all-expiring.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ autofs.spec ++++++ --- /var/tmp/diff_new_pack.Pwvivu/_old 2013-04-12 20:20:55.000000000 +0200 +++ /var/tmp/diff_new_pack.Pwvivu/_new 2013-04-12 20:20:55.000000000 +0200 @@ -81,6 +81,8 @@ Patch1: autofs-5.0.7-revert-fix-libtirpc-name-clash.patch # PATCH-FIX-UPSTREAM autofs-5.0.7-task-use-after-free.patch [bnc#727392] Patch82: autofs-5.0.7-task-use-after-free.patch +# PATCH-FIX-UPSTREAM autofs-5.0.7-fix-submount-tree-not-all-expiring.patch [bnc#801808] +Patch83: autofs-5.0.7-fix-submount-tree-not-all-expiring.patch # PATCH-FIX-OPENSUSE autofs-suse-auto_master_default.patch Patch100: autofs-suse-auto_master_default.patch # PATCH-FIX-OPENSUSE autofs-suse-build.patch @@ -112,6 +114,7 @@ %patch0 -p1 %patch1 -p1 %patch82 -p1 +%patch83 -p1 %patch100 -p1 %patch101 -p1 %patch102 -p0 -b .udisks ++++++ autofs-5.0.7-fix-submount-tree-not-all-expiring.patch ++++++ autofs-5.0.7 - fix submount tree not all expiring From: Ian Kent <[email protected]> Due to the change in the expire-specific-submount-only patch, sub-mounts within an indirect mount that follow a submount (in the check order) won't be expired if that submount is busy. --- lib/master.c | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) Index: autofs-5.0.7/lib/master.c =================================================================== --- autofs-5.0.7.orig/lib/master.c +++ autofs-5.0.7/lib/master.c @@ -905,15 +905,24 @@ int master_notify_submount(struct autofs this = list_entry(p, struct autofs_point, mounts); p = p->prev; - if (!master_submount_list_empty(this)) { - mounts_mutex_unlock(ap); - return master_notify_submount(this, path, state); - } - /* path not the same */ if (strcmp(this->path, path)) continue; + if (!master_submount_list_empty(this)) { + char *this_path = strdup(this->path); + if (this_path) { + mounts_mutex_unlock(ap); + master_notify_submount(this, path, state); + mounts_mutex_lock(ap); + if (!__master_find_submount(ap, this_path)) { + free(this_path); + continue; + } + free(this_path); + } + } + /* Now we have found the submount we want to expire */ st_mutex_lock(); @@ -959,10 +968,7 @@ int master_notify_submount(struct autofs st_mutex_lock(); } st_mutex_unlock(); - mounts_mutex_unlock(ap); - - return ret; - + break; } mounts_mutex_unlock(ap); -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
