From: Al Viro <viro@zeniv.linux.org.uk>
To: NeilBrown <neilb@suse.de>
Cc: Christian Brauner <brauner@kernel.org>, Jan Kara <jack@suse.cz>,
Miklos Szeredi <miklos@szeredi.hu>, Xiubo Li <xiubli@redhat.com>,
Ilya Dryomov <idryomov@gmail.com>,
Richard Weinberger <richard@nod.at>,
Anton Ivanov <anton.ivanov@cambridgegreys.com>,
Johannes Berg <johannes@sipsolutions.net>,
Trond Myklebust <trondmy@kernel.org>,
Anna Schumaker <anna@kernel.org>,
Chuck Lever <chuck.lever@oracle.com>,
Jeff Layton <jlayton@kernel.org>,
Olga Kornievskaia <okorniev@redhat.com>,
Dai Ngo <Dai.Ngo@oracle.com>, Tom Talpey <tom@talpey.com>,
Sergey Senozhatsky <senozhatsky@chromium.org>,
linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-cifs@vger.kernel.org, linux-nfs@vger.kernel.org,
linux-um@lists.infradead.org, ceph-devel@vger.kernel.org,
netfs@lists.linux.dev
Subject: Re: [PATCH 1/6] Change inode_operations.mkdir to return struct dentry *
Date: Mon, 24 Feb 2025 02:09:33 +0000 [thread overview]
Message-ID: <20250224020933.GV1977892@ZenIV> (raw)
In-Reply-To: <174036084630.74271.16513912864596248299@noble.neil.brown.name>
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 ;-/
next prev parent reply other threads:[~2025-02-24 2:09 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-20 23:36 [PATCH 0/6] Change ->mkdir() and vfs_mkdir() to return a dentry NeilBrown
2025-02-20 23:36 ` [PATCH 1/6] Change inode_operations.mkdir to return struct dentry * NeilBrown
2025-02-22 4:19 ` Al Viro
2025-02-24 1:34 ` NeilBrown
2025-02-24 2:09 ` Al Viro [this message]
2025-02-24 3:09 ` NeilBrown
2025-02-24 15:56 ` Trond Myklebust
2025-02-26 2:09 ` NeilBrown
2025-02-26 2:34 ` Trond Myklebust
2025-02-26 3:18 ` NeilBrown
2025-02-26 3:35 ` Al Viro
2025-02-22 4:56 ` Al Viro
2025-02-20 23:36 ` [PATCH 2/6] hostfs: store inode in dentry after mkdir if possible NeilBrown
2025-02-21 13:17 ` Jeff Layton
2025-02-20 23:36 ` [PATCH 3/6] ceph: return the correct dentry on mkdir NeilBrown
2025-02-21 1:48 ` Viacheslav Dubeyko
2025-02-24 2:15 ` NeilBrown
2025-02-24 22:09 ` Viacheslav Dubeyko
2025-02-24 22:53 ` Jeff Layton
2025-02-24 23:29 ` NeilBrown
2025-02-21 13:31 ` Jeff Layton
2025-02-20 23:36 ` [PATCH 4/6] fuse: return correct dentry for ->mkdir NeilBrown
2025-02-21 13:39 ` Jeff Layton
2025-02-22 4:24 ` Al Viro
2025-02-24 2:26 ` NeilBrown
2025-02-24 2:53 ` Al Viro
2025-02-20 23:36 ` [PATCH 5/6] nfs: change mkdir inode_operation to return alternate dentry if needed NeilBrown
2025-02-22 4:41 ` Al Viro
2025-02-24 2:41 ` NeilBrown
2025-02-20 23:36 ` [PATCH 6/6] VFS: Change vfs_mkdir() to return the dentry NeilBrown
2025-02-21 14:25 ` Jeff Layton
2025-02-22 0:32 ` Chuck Lever
2025-02-24 2:51 ` NeilBrown
2025-02-24 14:22 ` Chuck Lever
[not found] <CAH2r5mvXVc4=ZwvfwZtVaVM88+3cvUtjz-71af_Q+Jmbdst2_g@mail.gmail.com>
2025-02-24 2:02 ` [PATCH 1/6] Change inode_operations.mkdir to return struct dentry * NeilBrown
-- strict thread matches above, loose matches on Subject: below --
2025-02-27 1:32 [PATCH 0/6 v2] Change ->mkdir() and vfs_mkdir() to return a dentry NeilBrown
2025-02-27 1:32 ` [PATCH 1/6] Change inode_operations.mkdir to return struct dentry * NeilBrown
2025-02-27 11:34 ` Christian Brauner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250224020933.GV1977892@ZenIV \
--to=viro@zeniv.linux.org.uk \
--cc=Dai.Ngo@oracle.com \
--cc=anna@kernel.org \
--cc=anton.ivanov@cambridgegreys.com \
--cc=brauner@kernel.org \
--cc=ceph-devel@vger.kernel.org \
--cc=chuck.lever@oracle.com \
--cc=idryomov@gmail.com \
--cc=jack@suse.cz \
--cc=jlayton@kernel.org \
--cc=johannes@sipsolutions.net \
--cc=linux-cifs@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-um@lists.infradead.org \
--cc=miklos@szeredi.hu \
--cc=neilb@suse.de \
--cc=netfs@lists.linux.dev \
--cc=okorniev@redhat.com \
--cc=richard@nod.at \
--cc=senozhatsky@chromium.org \
--cc=tom@talpey.com \
--cc=trondmy@kernel.org \
--cc=xiubli@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.