Re: [pnfs] [GIT BISECT] first bad commit: 1f36f774 Switch !O_CREAT case to use of do_last()

Al Viro
2010-03-25T13:37:48Z

On Thu, Mar 25, 2010 at 03:30:22PM +0200, Boaz Harrosh wrote:
> > Let's try this: before do_lookup() call there add
> > if (*want_dir)
> > nd->flags |= LOOKUP_DIRECTORY;
>
> Yes this fixes it!!
> 2.6.34-rc2 plus above, now works, horay. (diff attached)
>
> > and see how does it behave.
> >
> > However, even if it does help, it doesn't explain everything. Normal
> > open() on a directory without O_DIRECTORY if flags shouldn't fail with
> > -EISDIR. How did that manage to avoid it all along?

Does open() of directory _without_ O_DIRECTORY work in e.g. vanilla 2.6.33?
It certainly does for local filesystems and it does for NFSv3; does it work
for NFSv4?