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]

Reply via email to