Skip to content

Commit ee37c3c

Browse files
neilbrownbrauner
authored andcommitted
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 <[email protected]> Signed-off-by: NeilBrown <[email protected]> Link: https://lore.kernel.org/[email protected] Signed-off-by: Christian Brauner <[email protected]>
1 parent 09d56cc commit ee37c3c

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

fs/overlayfs/dir.c

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -160,9 +160,10 @@ int ovl_cleanup_and_whiteout(struct ovl_fs *ofs, struct dentry *dir,
160160
goto out;
161161
}
162162

163-
struct dentry *ovl_create_real(struct ovl_fs *ofs, struct inode *dir,
163+
struct dentry *ovl_create_real(struct ovl_fs *ofs, struct dentry *parent,
164164
struct dentry *newdentry, struct ovl_cattr *attr)
165165
{
166+
struct inode *dir = parent->d_inode;
166167
int err;
167168

168169
if (IS_ERR(newdentry))
@@ -223,7 +224,7 @@ struct dentry *ovl_create_temp(struct ovl_fs *ofs, struct dentry *workdir,
223224
{
224225
struct dentry *ret;
225226
inode_lock(workdir->d_inode);
226-
ret = ovl_create_real(ofs, d_inode(workdir),
227+
ret = ovl_create_real(ofs, workdir,
227228
ovl_lookup_temp(ofs, workdir), attr);
228229
inode_unlock(workdir->d_inode);
229230
return ret;
@@ -329,7 +330,7 @@ static int ovl_create_upper(struct dentry *dentry, struct inode *inode,
329330
int err;
330331

331332
inode_lock_nested(udir, I_MUTEX_PARENT);
332-
newdentry = ovl_create_real(ofs, udir,
333+
newdentry = ovl_create_real(ofs, upperdir,
333334
ovl_lookup_upper(ofs, dentry->d_name.name,
334335
upperdir, dentry->d_name.len),
335336
attr);

fs/overlayfs/overlayfs.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -859,7 +859,7 @@ struct ovl_cattr {
859859
#define OVL_CATTR(m) (&(struct ovl_cattr) { .mode = (m) })
860860

861861
struct dentry *ovl_create_real(struct ovl_fs *ofs,
862-
struct inode *dir, struct dentry *newdentry,
862+
struct dentry *parent, struct dentry *newdentry,
863863
struct ovl_cattr *attr);
864864
int ovl_cleanup(struct ovl_fs *ofs, struct inode *dir, struct dentry *dentry);
865865
int ovl_cleanup_unlocked(struct ovl_fs *ofs, struct dentry *workdir, struct dentry *dentry);

fs/overlayfs/super.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -622,8 +622,7 @@ static struct dentry *ovl_lookup_or_create(struct ovl_fs *ofs,
622622
inode_lock_nested(parent->d_inode, I_MUTEX_PARENT);
623623
child = ovl_lookup_upper(ofs, name, parent, len);
624624
if (!IS_ERR(child) && !child->d_inode)
625-
child = ovl_create_real(ofs, parent->d_inode, child,
626-
OVL_CATTR(mode));
625+
child = ovl_create_real(ofs, parent, child, OVL_CATTR(mode));
627626
inode_unlock(parent->d_inode);
628627
dput(parent);
629628

0 commit comments

Comments
 (0)