Re: [PATCH 2/3] vfs - fix dentry ref count in do_lookup()

Al Viro
2011-01-18T04:44:21Z

On Tue, Jan 18, 2011 at 12:06:10PM +0800, Ian Kent wrote:
> There is a ref count problem in fs/namei.c:do_lookup().
>
> When walking in ref-walk mode, if follow_managed() returns a fail the
> reference held by path.dentry isn't dropped.

If we get to follow_managed(), we *are* in ref-walk mode. Unconditionally.
Besided, that's path_put_conditional(), not dput() - we might have both
grabbed vfsmount on mountpoint crossing *AND* changed dentry.

Applied with modifications...

The rest applied as-is.