[PATCH] autofs4 - zero timeout prevents shutdown

From: Ian Kent
Date: Mon Sep 18 2006 - 23:48:43 EST



Hi Andrew,

If the timeout of an autofs mount is set to zero then umounts
are disabled. This works fine, however the kernel module checks
the expire timeout and goes no further if it is zero. This is
not the right thing to do at shutdown as the module is passed
an option to expire mounts regardless of their timeout setting.

This patch allows autofs to honor the force expire option.

Signed-off-by: Ian Kent <raven@xxxxxxxxxx>

---

--- linux-2.6.18-rc6-mm2/fs/autofs4/expire.c.zero-timeout 2006-09-14 10:25:55.000000000 +0800
+++ linux-2.6.18-rc6-mm2/fs/autofs4/expire.c 2006-09-14 10:37:54.000000000 +0800
@@ -32,7 +32,7 @@ static inline int autofs4_can_expire(str

if (!do_now) {
/* Too young to die */
- if (time_after(ino->last_used + timeout, now))
+ if (!timeout || time_after(ino->last_used + timeout, now))
return 0;

/* update last_used here :-
@@ -253,7 +253,7 @@ static struct dentry *autofs4_expire_dir
struct dentry *root = dget(sb->s_root);
int do_now = how & AUTOFS_EXP_IMMEDIATE;

- if (!sbi->exp_timeout || !root)
+ if (!root)
return NULL;

now = jiffies;
@@ -293,7 +293,7 @@ static struct dentry *autofs4_expire_ind
int do_now = how & AUTOFS_EXP_IMMEDIATE;
int exp_leaves = how & AUTOFS_EXP_LEAVES;

- if ( !sbi->exp_timeout || !root )
+ if (!root)
return NULL;

now = jiffies;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/