Lines Matching refs:newdentry

140 int ovl_mkdir_real(struct inode *dir, struct dentry **newdentry, umode_t mode)
143 struct dentry *d, *dentry = *newdentry;
165 *newdentry = d;
170 struct dentry *ovl_create_real(struct inode *dir, struct dentry *newdentry,
175 if (IS_ERR(newdentry))
176 return newdentry;
179 if (newdentry->d_inode)
183 err = ovl_do_link(attr->hardlink, dir, newdentry);
187 err = ovl_do_create(dir, newdentry, attr->mode);
192 err = ovl_mkdir_real(dir, &newdentry, attr->mode);
199 err = ovl_do_mknod(dir, newdentry, attr->mode,
204 err = ovl_do_symlink(dir, newdentry, attr->link);
211 if (!err && WARN_ON(!newdentry->d_inode)) {
220 dput(newdentry);
223 return newdentry;
260 struct dentry *newdentry, bool hardlink)
263 .upperdentry = newdentry,
269 ovl_dentry_init_reval(dentry, newdentry);
290 WARN_ON(ovl_inode_real(inode) != d_inode(newdentry));
291 dput(newdentry);
323 struct dentry *newdentry;
330 newdentry = ovl_create_real(udir,
335 err = PTR_ERR(newdentry);
336 if (IS_ERR(newdentry))
339 if (ovl_type_merge(dentry->d_parent) && d_is_dir(newdentry)) {
341 ovl_set_opaque(dentry, newdentry);
344 err = ovl_instantiate(dentry, inode, newdentry, !!attr->hardlink);
352 ovl_cleanup(udir, newdentry);
353 dput(newdentry);
464 struct dentry *newdentry;
493 newdentry = ovl_create_temp(workdir, cattr);
494 err = PTR_ERR(newdentry);
495 if (IS_ERR(newdentry))
503 newdentry->d_inode->i_mode != cattr->mode) {
508 inode_lock(newdentry->d_inode);
509 err = notify_change(newdentry, &attr, NULL);
510 inode_unlock(newdentry->d_inode);
515 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_ACCESS,
520 err = ovl_set_upper_acl(newdentry, XATTR_NAME_POSIX_ACL_DEFAULT,
527 err = ovl_set_opaque(dentry, newdentry);
531 err = ovl_do_rename(wdir, newdentry, udir, upper,
538 err = ovl_do_rename(wdir, newdentry, udir, upper, 0);
542 err = ovl_instantiate(dentry, inode, newdentry, hardlink);
544 ovl_cleanup(udir, newdentry);
545 dput(newdentry);
559 ovl_cleanup(wdir, newdentry);
560 dput(newdentry);
1094 struct dentry *newdentry;
1210 newdentry = lookup_one_len(new->d_name.name, new_upperdir,
1212 err = PTR_ERR(newdentry);
1213 if (IS_ERR(newdentry))
1222 if (newdentry != opaquedir)
1225 if (!ovl_matches_upper(new, newdentry))
1229 if (!d_is_negative(newdentry)) {
1230 if (!new_opaque || !ovl_is_whiteout(newdentry))
1240 if (newdentry == trap)
1243 if (olddentry->d_inode == newdentry->d_inode)
1258 err = ovl_set_opaque_xerr(new, newdentry, -EXDEV);
1263 new_upperdir->d_inode, newdentry, flags);
1268 ovl_cleanup(old_upperdir->d_inode, newdentry);
1285 ovl_copyattr(d_inode(newdentry), d_inode(new));
1288 dput(newdentry);