[PATCH 34/53] tracefs: stop using d_add().
NeilBrown <[email protected]> Fri, 13 Mar 2026 08:12:21 +1100
| Newsgroups | org.kernel.vger.ecryptfs,dev.linux.lists.gfs2,org.infradead.lists.linux-um,org.kernel.vger.ceph-devel,org.kernel.vger.linux-cifs,org.kernel.vger.linux-efi,org.kernel.vger.linux-ext4,org.kernel.vger.linux-fsdevel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-nfs,org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-unionfs,org.kernel.vger.linux-xfs,org.kvack.linux-mm |
|---|---|
| Message-ID | <[email protected]> |
From: NeilBrown <[email protected]> "Best practice" is to use d_splice_alias() at the end of a ->lookup function. d_add() often works and is not incorrect in tracefs, but as it is planned to remove d_add(), change to use d_splice_alias(). Signed-off-by: NeilBrown <[email protected]> --- fs/tracefs/event_inode.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/fs/tracefs/event_inode.c b/fs/tracefs/event_inode.c index 8e5ac464b328..c30567b5331e 100644 --- a/fs/tracefs/event_inode.c +++ b/fs/tracefs/event_inode.c @@ -393,8 +393,7 @@ static struct dentry *lookup_file(struct eventfs_inode *parent_ei, // Files have their parent's ei as their fsdata dentry->d_fsdata = get_ei(parent_ei); - d_add(dentry, inode); - return NULL; + return d_splice_alias(inode, dentry); }; /** @@ -424,8 +423,7 @@ static struct dentry *lookup_dir_entry(struct dentry *dentry, dentry->d_fsdata = get_ei(ei); - d_add(dentry, inode); - return NULL; + return d_splice_alias(inode, dentry); } static inline struct eventfs_inode *init_ei(struct eventfs_inode *ei, const char *name) -- 2.50.0.107.gf914562f5916.dirty