diff options
Diffstat (limited to 'fs/debugfs/inode.c')
-rw-r--r-- | fs/debugfs/inode.c | 17 |
1 files changed, 3 insertions, 14 deletions
diff --git a/fs/debugfs/inode.c b/fs/debugfs/inode.c index 8d12935..778c0e3 100644 --- a/fs/debugfs/inode.c +++ b/fs/debugfs/inode.c @@ -84,19 +84,6 @@ static int debugfs_mknod(struct dentry *dentry, return 0; } -static int debugfs_create(struct dentry *dentry, umode_t mode, - void *data, const struct file_operations *fops) -{ - struct inode *dir = dentry->d_parent->d_inode; - int res; - - mode = (mode & S_IALLUGO) | S_IFREG; - res = debugfs_mknod(dentry, mode, data, fops); - if (!res) - fsnotify_create(dir, dentry); - return res; -} - static inline int debugfs_positive(struct dentry *dentry) { return dentry->d_inode && !d_unhashed(dentry); @@ -362,7 +349,9 @@ struct dentry *debugfs_create_file(const char *name, umode_t mode, if (IS_ERR(dentry)) return NULL; - error = debugfs_create(dentry, mode, data, fops); + error = debugfs_mknod(dentry, mode, data, fops); + if (!error) + fsnotify_create(dentry->d_parent->d_inode, dentry); return end_creating(dentry, error); } EXPORT_SYMBOL_GPL(debugfs_create_file); |