Messages in this thread | | | Date | Wed, 6 Aug 2003 11:08:07 +0530 | From | Maneesh Soni <> | Subject | Re: [PATCH] autofs4 doesn't expire |
| |
On Tue, Aug 05, 2003 at 10:08:48PM -0700, Andrew Morton wrote: > Maneesh Soni <maneesh@in.ibm.com> wrote: > > > > + if (vfs) { > > + if (is_vfsmnt_tree_busy(vfs)) > > + ret--; > > + /* just to reduce ref count taken in lookup_mnt > > + * cannot call mntput() here > > + */ > > + atomic_dec(&vfs->mnt_count); > > + } > > Doesn't work, does it? If someone else does a mntput() just beforehand, > __mntput() never gets run. >
no.. it will not work. looks like we have to unlock and lock dcache_lock and use mntput as I did earlier. But I think, it will be really nice if Jermey can revisit is_tree_busy() code.
There can be other problems like the checking d_count for dentries under dcache_lock(). As users can do dget() or dput() manipulating d_count without dcache_lock().
Maneesh
-- Maneesh Soni IBM Linux Technology Center, IBM India Software Lab, Bangalore. Phone: +91-80-5044999 email: maneesh@in.ibm.com http://lse.sourceforge.net/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |