diff options
| author | Jeff Layton <jlayton@kernel.org> | 2025-11-11 09:12:52 -0500 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-11-12 09:38:36 +0100 |
| commit | e8960c1b2ee9ba75d65492b8e90e851d11e5f215 (patch) | |
| tree | 8c81470d1c608653d68138c6f11e025d5450f8f7 /fs/ecryptfs | |
| parent | c826229c6a82fe1fe7b7752692f87a881eb4b545 (diff) | |
| download | linux-e8960c1b2ee9ba75d65492b8e90e851d11e5f215.tar.gz linux-e8960c1b2ee9ba75d65492b8e90e851d11e5f215.tar.bz2 linux-e8960c1b2ee9ba75d65492b8e90e851d11e5f215.zip | |
vfs: make vfs_mknod break delegations on parent directory
In order to add directory delegation support, we need to break
delegations on the parent whenever there is going to be a change in the
directory.
Add a new delegated_inode pointer to vfs_mknod() and have the
appropriate callers wait when there is an outstanding delegation. All
other callers just set the pointer to NULL.
Reviewed-by: Jan Kara <jack@suse.cz>
Reviewed-by: NeilBrown <neil@brown.name>
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Link: https://patch.msgid.link/20251111-dir-deleg-ro-v6-11-52f3feebb2f2@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'fs/ecryptfs')
| -rw-r--r-- | fs/ecryptfs/inode.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ecryptfs/inode.c b/fs/ecryptfs/inode.c index 3341f00dd087..83f06452476d 100644 --- a/fs/ecryptfs/inode.c +++ b/fs/ecryptfs/inode.c @@ -564,7 +564,7 @@ ecryptfs_mknod(struct mnt_idmap *idmap, struct inode *dir, rc = lock_parent(dentry, &lower_dentry, &lower_dir); if (!rc) rc = vfs_mknod(&nop_mnt_idmap, lower_dir, - lower_dentry, mode, dev); + lower_dentry, mode, dev, NULL); if (rc || d_really_is_negative(lower_dentry)) goto out; rc = ecryptfs_interpose(lower_dentry, dentry, dir->i_sb); |
