[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250224020933.GV1977892@ZenIV>
Date: Mon, 24 Feb 2025 02:09:33 +0000
From: Al Viro <viro@...iv.linux.org.uk>
To: NeilBrown <neilb@...e.de>
Cc: Christian Brauner <brauner@...nel.org>, Jan Kara <jack@...e.cz>,
Miklos Szeredi <miklos@...redi.hu>, Xiubo Li <xiubli@...hat.com>,
Ilya Dryomov <idryomov@...il.com>,
Richard Weinberger <richard@....at>,
Anton Ivanov <anton.ivanov@...bridgegreys.com>,
Johannes Berg <johannes@...solutions.net>,
Trond Myklebust <trondmy@...nel.org>,
Anna Schumaker <anna@...nel.org>,
Chuck Lever <chuck.lever@...cle.com>,
Jeff Layton <jlayton@...nel.org>,
Olga Kornievskaia <okorniev@...hat.com>,
Dai Ngo <Dai.Ngo@...cle.com>, Tom Talpey <tom@...pey.com>,
Sergey Senozhatsky <senozhatsky@...omium.org>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
linux-cifs@...r.kernel.org, linux-nfs@...r.kernel.org,
linux-um@...ts.infradead.org, ceph-devel@...r.kernel.org,
netfs@...ts.linux.dev
Subject: Re: [PATCH 1/6] Change inode_operations.mkdir to return struct
dentry *
On Mon, Feb 24, 2025 at 12:34:06PM +1100, NeilBrown wrote:
> On Sat, 22 Feb 2025, Al Viro wrote:
> > On Fri, Feb 21, 2025 at 10:36:30AM +1100, NeilBrown wrote:
> >
> > > +In general, filesystems which use d_instantiate_new() to install the new
> > > +inode can safely return NULL. Filesystems which may not have an I_NEW inode
> > > +should use d_drop();d_splice_alias() and return the result of the latter.
> >
> > IMO that's a bad pattern, _especially_ if you want to go for "in-update"
> > kind of stuff later.
>
> Agreed. I have a draft patch to change d_splice_alias() and
> d_exact_alias() to work on hashed dentrys. I thought it should go after
> these mkdir patches rather than before.
Could you give a braindump on the things d_exact_alias() is needed for?
It's a recurring headache when doing ->d_name/->d_parent audits; see e.g.
https://lore.kernel.org/all/20241213080023.GI3387508@ZenIV/ for related
mini-rant from the latest iteration.
Proof of correctness is bloody awful; it feels like the primitive itself
is wrong, but I'd never been able to write anything concise regarding
the things we really want there ;-/
Powered by blists - more mailing lists