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()
262 struct dentry *newdentry, bool hardlink) in ovl_instantiate() argument
265 .upperdentry = newdentry, in ovl_instantiate()
271 ovl_dentry_update_reval(dentry, newdentry, in ovl_instantiate()
293 WARN_ON(ovl_inode_real(inode) != d_inode(newdentry)); in ovl_instantiate()
294 dput(newdentry); in ovl_instantiate()
327 struct dentry *newdentry; in ovl_create_upper() local
334 newdentry = ovl_create_real(udir, in ovl_create_upper()
339 err = PTR_ERR(newdentry); in ovl_create_upper()
340 if (IS_ERR(newdentry)) in ovl_create_upper()
343 if (ovl_type_merge(dentry->d_parent) && d_is_dir(newdentry) && in ovl_create_upper()
346 ovl_set_opaque(dentry, newdentry); in ovl_create_upper()
349 err = ovl_instantiate(dentry, inode, newdentry, !!attr->hardlink); in ovl_create_upper()
357 ovl_cleanup(udir, newdentry); in ovl_create_upper()
358 dput(newdentry); in ovl_create_upper()
469 struct dentry *newdentry; in ovl_create_over_whiteout() local
498 newdentry = ovl_create_temp(workdir, cattr); in ovl_create_over_whiteout()
499 err = PTR_ERR(newdentry); in ovl_create_over_whiteout()
500 if (IS_ERR(newdentry)) in ovl_create_over_whiteout()
508 newdentry->d_inode->i_mode != cattr->mode) { in ovl_create_over_whiteout()
513 inode_lock(newdentry->d_inode); in ovl_create_over_whiteout()
514 err = notify_change(&init_user_ns, newdentry, &attr, NULL); in ovl_create_over_whiteout()
515 inode_unlock(newdentry->d_inode); in ovl_create_over_whiteout()
520 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_ACCESS, in ovl_create_over_whiteout()
525 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_DEFAULT, in ovl_create_over_whiteout()
532 err = ovl_set_opaque(dentry, newdentry); in ovl_create_over_whiteout()
536 err = ovl_do_rename(wdir, newdentry, udir, upper, in ovl_create_over_whiteout()
543 err = ovl_do_rename(wdir, newdentry, udir, upper, 0); in ovl_create_over_whiteout()
547 err = ovl_instantiate(dentry, inode, newdentry, hardlink); in ovl_create_over_whiteout()
549 ovl_cleanup(udir, newdentry); in ovl_create_over_whiteout()
550 dput(newdentry); in ovl_create_over_whiteout()
564 ovl_cleanup(wdir, newdentry); in ovl_create_over_whiteout()
565 dput(newdentry); in ovl_create_over_whiteout()
1087 struct dentry *newdentry; in ovl_rename() local
1203 newdentry = lookup_one_len(new->d_name.name, new_upperdir, in ovl_rename()
1205 err = PTR_ERR(newdentry); in ovl_rename()
1206 if (IS_ERR(newdentry)) in ovl_rename()
1215 if (newdentry != opaquedir) in ovl_rename()
1218 if (!ovl_matches_upper(new, newdentry)) in ovl_rename()
1222 if (!d_is_negative(newdentry)) { in ovl_rename()
1223 if (!new_opaque || !ovl_is_whiteout(newdentry)) in ovl_rename()
1233 if (newdentry == trap) in ovl_rename()
1236 if (olddentry->d_inode == newdentry->d_inode) in ovl_rename()
1251 err = ovl_set_opaque_xerr(new, newdentry, -EXDEV); in ovl_rename()
1256 new_upperdir->d_inode, newdentry, flags); in ovl_rename()
1261 ovl_cleanup(old_upperdir->d_inode, newdentry); in ovl_rename()
1278 ovl_copyattr(d_inode(newdentry), d_inode(new)); in ovl_rename()
1281 dput(newdentry); in ovl_rename()