Lines Matching refs:newdentry

140 static int ovl_mkdir_real(struct inode *dir, struct dentry **newdentry,  in ovl_mkdir_real()  argument
144 struct dentry *d, *dentry = *newdentry; in ovl_mkdir_real()
166 *newdentry = d; in ovl_mkdir_real()
171 struct dentry *ovl_create_real(struct inode *dir, struct dentry *newdentry, in ovl_create_real() argument
176 if (IS_ERR(newdentry)) in ovl_create_real()
177 return newdentry; in ovl_create_real()
180 if (newdentry->d_inode) in ovl_create_real()
184 err = ovl_do_link(attr->hardlink, dir, newdentry); in ovl_create_real()
188 err = ovl_do_create(dir, newdentry, attr->mode); in ovl_create_real()
193 err = ovl_mkdir_real(dir, &newdentry, attr->mode); in ovl_create_real()
200 err = ovl_do_mknod(dir, newdentry, attr->mode, in ovl_create_real()
205 err = ovl_do_symlink(dir, newdentry, attr->link); in ovl_create_real()
212 if (!err && WARN_ON(!newdentry->d_inode)) { in ovl_create_real()
221 dput(newdentry); in ovl_create_real()
224 return newdentry; in ovl_create_real()
261 struct dentry *newdentry, bool hardlink) in ovl_instantiate() argument
264 .upperdentry = newdentry, in ovl_instantiate()
270 ovl_dentry_update_reval(dentry, newdentry, in ovl_instantiate()
292 WARN_ON(ovl_inode_real(inode) != d_inode(newdentry)); in ovl_instantiate()
293 dput(newdentry); in ovl_instantiate()
325 struct dentry *newdentry; in ovl_create_upper() local
332 newdentry = ovl_create_real(udir, in ovl_create_upper()
337 err = PTR_ERR(newdentry); in ovl_create_upper()
338 if (IS_ERR(newdentry)) in ovl_create_upper()
341 if (ovl_type_merge(dentry->d_parent) && d_is_dir(newdentry)) { in ovl_create_upper()
343 ovl_set_opaque(dentry, newdentry); in ovl_create_upper()
346 err = ovl_instantiate(dentry, inode, newdentry, !!attr->hardlink); in ovl_create_upper()
354 ovl_cleanup(udir, newdentry); in ovl_create_upper()
355 dput(newdentry); in ovl_create_upper()
466 struct dentry *newdentry; in ovl_create_over_whiteout() local
495 newdentry = ovl_create_temp(workdir, cattr); in ovl_create_over_whiteout()
496 err = PTR_ERR(newdentry); in ovl_create_over_whiteout()
497 if (IS_ERR(newdentry)) in ovl_create_over_whiteout()
505 newdentry->d_inode->i_mode != cattr->mode) { in ovl_create_over_whiteout()
510 inode_lock(newdentry->d_inode); in ovl_create_over_whiteout()
511 err = notify_change(newdentry, &attr, NULL); in ovl_create_over_whiteout()
512 inode_unlock(newdentry->d_inode); in ovl_create_over_whiteout()
517 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_ACCESS, in ovl_create_over_whiteout()
522 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_DEFAULT, in ovl_create_over_whiteout()
529 err = ovl_set_opaque(dentry, newdentry); in ovl_create_over_whiteout()
533 err = ovl_do_rename(wdir, newdentry, udir, upper, in ovl_create_over_whiteout()
540 err = ovl_do_rename(wdir, newdentry, udir, upper, 0); in ovl_create_over_whiteout()
544 err = ovl_instantiate(dentry, inode, newdentry, hardlink); in ovl_create_over_whiteout()
559 ovl_cleanup(wdir, newdentry); in ovl_create_over_whiteout()
560 dput(newdentry); in ovl_create_over_whiteout()
1080 struct dentry *newdentry; in ovl_rename() local
1196 newdentry = lookup_one_len(new->d_name.name, new_upperdir, in ovl_rename()
1198 err = PTR_ERR(newdentry); in ovl_rename()
1199 if (IS_ERR(newdentry)) in ovl_rename()
1208 if (newdentry != opaquedir) in ovl_rename()
1211 if (!ovl_matches_upper(new, newdentry)) in ovl_rename()
1215 if (!d_is_negative(newdentry) && in ovl_rename()
1216 (!new_opaque || !ovl_is_whiteout(newdentry))) in ovl_rename()
1222 if (newdentry == trap) in ovl_rename()
1225 if (olddentry->d_inode == newdentry->d_inode) in ovl_rename()
1240 err = ovl_set_opaque_xerr(new, newdentry, -EXDEV); in ovl_rename()
1245 new_upperdir->d_inode, newdentry, flags); in ovl_rename()
1250 ovl_cleanup(old_upperdir->d_inode, newdentry); in ovl_rename()
1267 ovl_copyattr(d_inode(newdentry), d_inode(new)); in ovl_rename()
1270 dput(newdentry); in ovl_rename()