diff options
| author | Jeff Layton <jlayton@kernel.org> | 2025-11-11 17:12:53 +0300 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-11-12 11:38:36 +0300 |
| commit | 92bf53577f01aad988f7f39f69163b41f94cfb7d (patch) | |
| tree | d669d11890f438b5bbcdee804eb66681ae311e72 /include | |
| parent | e8960c1b2ee9ba75d65492b8e90e851d11e5f215 (diff) | |
| download | linux-92bf53577f01aad988f7f39f69163b41f94cfb7d.tar.xz | |
vfs: make vfs_symlink break delegations on parent dir
In order to add directory delegation support, we must break delegations
on the parent on any change to the directory.
Add a delegated_inode parameter to vfs_symlink() and have it break the
delegation. do_symlinkat() can then wait on the delegation break before
proceeding.
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-12-52f3feebb2f2@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/fs.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/fs.h b/include/linux/fs.h index 1a5d86cfafaa..64323e618724 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -2118,7 +2118,7 @@ struct dentry *vfs_mkdir(struct mnt_idmap *, struct inode *, int vfs_mknod(struct mnt_idmap *, struct inode *, struct dentry *, umode_t, dev_t, struct delegated_inode *); int vfs_symlink(struct mnt_idmap *, struct inode *, - struct dentry *, const char *); + struct dentry *, const char *, struct delegated_inode *); int vfs_link(struct dentry *, struct mnt_idmap *, struct inode *, struct dentry *, struct delegated_inode *); int vfs_rmdir(struct mnt_idmap *, struct inode *, struct dentry *, |
