Re: [git pull] mount API series

From: David Howells
Date: Wed Oct 31 2018 - 14:39:05 EST


> My objections fundamentally is that I can find real problems when I look
> at the code.

Eric.

You have repeatedly stated that there are "thinkos, typos and bugs" in the
code, but you have not been very forthcoming in actually disclosing *what*
those things are.

You had a go at rewriting it for yourself, with different philosophical aims,
and at one point, you posted a partially reworked git branch my way. However,
you changed the patches in various ways that rendered it incomparable with
mine, making it very hard to actually separate bug fixes from your other
changes. No useful notes were given.

> Further the changes have not been incremental changes that have evolved the
> code from one state to another but complete replacements of code that make
> code review very difficult and bisection completely inapplicable.

... therefore I find this a little hypocritical.

Further, your rewrite breaks NFS and other things, such as mis-renumbering the
tokens in SELinux. Splitting the lookup-and-create operation into separate
lookup-no-create and create-or-fail won't work for NFS. Despite your
protestation, this *has* been discussed publically - and you even joined in
the discussion.

> A couple of bugs that I can see quickly. Several of which I have
> previously reported:
>
> - There is an easily triggered NULL pointer deference with open_tree
> and mount propagation.

As far as I know, these have all been cleared up. I think that I've cleared
up all the bugs that Alan Jenkins found (many thanks to him for that!).

> - Bisection will not work with the cpuset filesystem patch.

It won't? I don't recall this been mentioned before (but I may have missed
it).

> At least cpuset looks like it may be mountable now.

It does mount now. Thanks for pointing that out.

> - The setting of fc->user_ns on proc remains broken. In particular if you
> create a child user namespace and attempt to mount proc it will succeed
> instead of fail.

You did mention this before - but you haven't been clear on how to fix it. I
tried to work this out from your branch, but it's mixed in with loads of other
changes.

> - The mqueue filesystem has the same issue as proc. fc->user_ns is misset.

I have a patch that I think should fix both of these. I'll follow up this
message with it, if you could check it please.

David