Re: aio openat Re: [PATCH 07/13] aio: enabled thread based async fsync

From: Al Viro
Date: Sat Mar 19 2016 - 21:55:38 EST


On Sat, Mar 19, 2016 at 06:45:19PM -0700, Linus Torvalds wrote:

> It actually does seem to do that, although in an admittedly rather
> questionable way.
>
> I think it should use path_openat() rather than do_filp_open(), but
> passing in LOOKUP_RCU to do_filp_open() actually does work: it just
> means that the retry after ECHILD/ESTALE will just do it *again* with
> LOOKUP_RCU. It won't fall back to non-rcu mode, it just won't or in
> the LOOKUP_RCU flag that is already set.

What would make unlazy_walk() fail? And if it succeeds, you are not
in RCU mode anymore *without* restarting from scratch...