Lines Matching refs:dentry
57 static struct dentry *dev_mount(struct file_system_type *fs_type, int flags, in dev_mount()
152 struct dentry *dentry; in dev_mkdir() local
156 dentry = kern_path_create(AT_FDCWD, name, &path, LOOKUP_DIRECTORY); in dev_mkdir()
157 if (IS_ERR(dentry)) in dev_mkdir()
158 return PTR_ERR(dentry); in dev_mkdir()
160 err = vfs_mkdir(d_inode(path.dentry), dentry, mode); in dev_mkdir()
163 d_inode(dentry)->i_private = &thread; in dev_mkdir()
164 done_path_create(&path, dentry); in dev_mkdir()
198 struct dentry *dentry; in handle_create() local
202 dentry = kern_path_create(AT_FDCWD, nodename, &path, 0); in handle_create()
203 if (dentry == ERR_PTR(-ENOENT)) { in handle_create()
205 dentry = kern_path_create(AT_FDCWD, nodename, &path, 0); in handle_create()
207 if (IS_ERR(dentry)) in handle_create()
208 return PTR_ERR(dentry); in handle_create()
210 err = vfs_mknod(d_inode(path.dentry), dentry, mode, dev->devt); in handle_create()
218 mutex_lock(&d_inode(dentry)->i_mutex); in handle_create()
219 notify_change(dentry, &newattrs, NULL); in handle_create()
220 mutex_unlock(&d_inode(dentry)->i_mutex); in handle_create()
223 d_inode(dentry)->i_private = &thread; in handle_create()
225 done_path_create(&path, dentry); in handle_create()
232 struct dentry *dentry; in dev_rmdir() local
235 dentry = kern_path_locked(name, &parent); in dev_rmdir()
236 if (IS_ERR(dentry)) in dev_rmdir()
237 return PTR_ERR(dentry); in dev_rmdir()
238 if (d_really_is_positive(dentry)) { in dev_rmdir()
239 if (d_inode(dentry)->i_private == &thread) in dev_rmdir()
240 err = vfs_rmdir(d_inode(parent.dentry), dentry); in dev_rmdir()
246 dput(dentry); in dev_rmdir()
247 mutex_unlock(&d_inode(parent.dentry)->i_mutex); in dev_rmdir()
301 struct dentry *dentry; in handle_remove() local
305 dentry = kern_path_locked(nodename, &parent); in handle_remove()
306 if (IS_ERR(dentry)) in handle_remove()
307 return PTR_ERR(dentry); in handle_remove()
309 if (d_really_is_positive(dentry)) { in handle_remove()
311 struct path p = {.mnt = parent.mnt, .dentry = dentry}; in handle_remove()
313 if (!err && dev_mynode(dev, d_inode(dentry), &stat)) { in handle_remove()
324 mutex_lock(&d_inode(dentry)->i_mutex); in handle_remove()
325 notify_change(dentry, &newattrs, NULL); in handle_remove()
326 mutex_unlock(&d_inode(dentry)->i_mutex); in handle_remove()
327 err = vfs_unlink(d_inode(parent.dentry), dentry, NULL); in handle_remove()
334 dput(dentry); in handle_remove()
335 mutex_unlock(&d_inode(parent.dentry)->i_mutex); in handle_remove()