48 lines
1.5 KiB
Diff
48 lines
1.5 KiB
Diff
autofs-5.1.8 - don't close lookup at umount
|
|
|
|
From: Ian Kent <raven@themaw.net>
|
|
|
|
Since map sources are reference counted they persist beyond autofs
|
|
submounts.
|
|
|
|
Now the map source moudule lookup gets closed at submount umount and
|
|
if we are unlucky enough to be using the same map in other submounts
|
|
and a lookup is underway at the time of the umount a crash can occur.
|
|
|
|
To resolve this it's much better to just not close the lookup at
|
|
submount umount and rely on the map source free to close the module
|
|
lookup and instances when the map source is no longer referenced.
|
|
|
|
Signed-off-by: Ian Kent <raven@themaw.net>
|
|
---
|
|
CHANGELOG | 1 +
|
|
daemon/automount.c | 7 -------
|
|
2 files changed, 1 insertion(+), 7 deletions(-)
|
|
|
|
--- autofs-5.1.7.orig/CHANGELOG
|
|
+++ autofs-5.1.7/CHANGELOG
|
|
@@ -116,6 +116,7 @@
|
|
- improve handling of ENOENT in sss setautomntent().
|
|
- don't immediately call function when waiting.
|
|
- fix return status of mount_autofs().
|
|
+- don't close lookup at umount.
|
|
|
|
25/01/2021 autofs-5.1.7
|
|
- make bind mounts propagation slave by default.
|
|
--- autofs-5.1.7.orig/daemon/automount.c
|
|
+++ autofs-5.1.7/daemon/automount.c
|
|
@@ -737,13 +737,6 @@ static int umount_autofs(struct autofs_p
|
|
if (ap->state == ST_INIT)
|
|
return -1;
|
|
|
|
- /*
|
|
- * Since lookup.c is lazy about closing lookup modules
|
|
- * to prevent unneeded opens, we need to clean them up
|
|
- * before umount.
|
|
- */
|
|
- lookup_close_lookup(ap);
|
|
-
|
|
if (ap->type == LKP_INDIRECT) {
|
|
umount_all(ap);
|
|
ret = umount_autofs_indirect(ap, root);
|