mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 07:33:19 +02:00
ovl: change ovl_create_real() to receive dentry parent
Instead of passing an inode *dir, pass a dentry *parent. This makes the calling slightly cleaner. Reviewed-by: Amir Goldstein <amir73il@gmail.com> Signed-off-by: NeilBrown <neil@brown.name> Link: https://lore.kernel.org/20250716004725.1206467-21-neil@brown.name Signed-off-by: Christian Brauner <brauner@kernel.org>
This commit is contained in:
parent
09d56cc88c
commit
ee37c3cfc5
|
|
@ -160,9 +160,10 @@ int ovl_cleanup_and_whiteout(struct ovl_fs *ofs, struct dentry *dir,
|
|||
goto out;
|
||||
}
|
||||
|
||||
struct dentry *ovl_create_real(struct ovl_fs *ofs, struct inode *dir,
|
||||
struct dentry *ovl_create_real(struct ovl_fs *ofs, struct dentry *parent,
|
||||
struct dentry *newdentry, struct ovl_cattr *attr)
|
||||
{
|
||||
struct inode *dir = parent->d_inode;
|
||||
int err;
|
||||
|
||||
if (IS_ERR(newdentry))
|
||||
|
|
@ -223,7 +224,7 @@ struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
|
|||
{
|
||||
struct dentry *ret;
|
||||
inode_lock(workdir->d_inode);
|
||||
ret = ovl_create_real(ofs, d_inode(workdir),
|
||||
ret = ovl_create_real(ofs, workdir,
|
||||
ovl_lookup_temp(ofs, workdir), attr);
|
||||
inode_unlock(workdir->d_inode);
|
||||
return ret;
|
||||
|
|
@ -329,7 +330,7 @@ static int ovl_create_upper(struct dentry *dentry, struct inode *inode,
|
|||
int err;
|
||||
|
||||
inode_lock_nested(udir, I_MUTEX_PARENT);
|
||||
newdentry = ovl_create_real(ofs, udir,
|
||||
newdentry = ovl_create_real(ofs, upperdir,
|
||||
ovl_lookup_upper(ofs, dentry->d_name.name,
|
||||
upperdir, dentry->d_name.len),
|
||||
attr);
|
||||
|
|
|
|||
|
|
@ -859,7 +859,7 @@ struct ovl_cattr {
|
|||
#define OVL_CATTR(m) (&(struct ovl_cattr) { .mode = (m) })
|
||||
|
||||
struct dentry *ovl_create_real(struct ovl_fs *ofs,
|
||||
struct inode *dir, struct dentry *newdentry,
|
||||
struct dentry *parent, struct dentry *newdentry,
|
||||
struct ovl_cattr *attr);
|
||||
int ovl_cleanup(struct ovl_fs *ofs, struct inode *dir, struct dentry *dentry);
|
||||
int ovl_cleanup_unlocked(struct ovl_fs *ofs, struct dentry *workdir, struct dentry *dentry);
|
||||
|
|
|
|||
|
|
@ -622,8 +622,7 @@ static struct dentry *ovl_lookup_or_create(struct ovl_fs *ofs,
|
|||
inode_lock_nested(parent->d_inode, I_MUTEX_PARENT);
|
||||
child = ovl_lookup_upper(ofs, name, parent, len);
|
||||
if (!IS_ERR(child) && !child->d_inode)
|
||||
child = ovl_create_real(ofs, parent->d_inode, child,
|
||||
OVL_CATTR(mode));
|
||||
child = ovl_create_real(ofs, parent, child, OVL_CATTR(mode));
|
||||
inode_unlock(parent->d_inode);
|
||||
dput(parent);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user