diff options
Diffstat (limited to 'fs/namei.c')
-rw-r--r-- | fs/namei.c | 26 |
1 files changed, 6 insertions, 20 deletions
diff --git a/fs/namei.c b/fs/namei.c index 145e852c4bd0..21d85f1ac839 100644 --- a/fs/namei.c +++ b/fs/namei.c | |||
@@ -1316,10 +1316,8 @@ int vfs_create(struct inode *dir, struct dentry *dentry, int mode, | |||
1316 | return error; | 1316 | return error; |
1317 | DQUOT_INIT(dir); | 1317 | DQUOT_INIT(dir); |
1318 | error = dir->i_op->create(dir, dentry, mode, nd); | 1318 | error = dir->i_op->create(dir, dentry, mode, nd); |
1319 | if (!error) { | 1319 | if (!error) |
1320 | fsnotify_create(dir, dentry->d_name.name); | 1320 | fsnotify_create(dir, dentry->d_name.name); |
1321 | security_inode_post_create(dir, dentry, mode); | ||
1322 | } | ||
1323 | return error; | 1321 | return error; |
1324 | } | 1322 | } |
1325 | 1323 | ||
@@ -1635,10 +1633,8 @@ int vfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t dev) | |||
1635 | 1633 | ||
1636 | DQUOT_INIT(dir); | 1634 | DQUOT_INIT(dir); |
1637 | error = dir->i_op->mknod(dir, dentry, mode, dev); | 1635 | error = dir->i_op->mknod(dir, dentry, mode, dev); |
1638 | if (!error) { | 1636 | if (!error) |
1639 | fsnotify_create(dir, dentry->d_name.name); | 1637 | fsnotify_create(dir, dentry->d_name.name); |
1640 | security_inode_post_mknod(dir, dentry, mode, dev); | ||
1641 | } | ||
1642 | return error; | 1638 | return error; |
1643 | } | 1639 | } |
1644 | 1640 | ||
@@ -1708,10 +1704,8 @@ int vfs_mkdir(struct inode *dir, struct dentry *dentry, int mode) | |||
1708 | 1704 | ||
1709 | DQUOT_INIT(dir); | 1705 | DQUOT_INIT(dir); |
1710 | error = dir->i_op->mkdir(dir, dentry, mode); | 1706 | error = dir->i_op->mkdir(dir, dentry, mode); |
1711 | if (!error) { | 1707 | if (!error) |
1712 | fsnotify_mkdir(dir, dentry->d_name.name); | 1708 | fsnotify_mkdir(dir, dentry->d_name.name); |
1713 | security_inode_post_mkdir(dir,dentry, mode); | ||
1714 | } | ||
1715 | return error; | 1709 | return error; |
1716 | } | 1710 | } |
1717 | 1711 | ||
@@ -1947,10 +1941,8 @@ int vfs_symlink(struct inode *dir, struct dentry *dentry, const char *oldname, i | |||
1947 | 1941 | ||
1948 | DQUOT_INIT(dir); | 1942 | DQUOT_INIT(dir); |
1949 | error = dir->i_op->symlink(dir, dentry, oldname); | 1943 | error = dir->i_op->symlink(dir, dentry, oldname); |
1950 | if (!error) { | 1944 | if (!error) |
1951 | fsnotify_create(dir, dentry->d_name.name); | 1945 | fsnotify_create(dir, dentry->d_name.name); |
1952 | security_inode_post_symlink(dir, dentry, oldname); | ||
1953 | } | ||
1954 | return error; | 1946 | return error; |
1955 | } | 1947 | } |
1956 | 1948 | ||
@@ -2020,10 +2012,8 @@ int vfs_link(struct dentry *old_dentry, struct inode *dir, struct dentry *new_de | |||
2020 | DQUOT_INIT(dir); | 2012 | DQUOT_INIT(dir); |
2021 | error = dir->i_op->link(old_dentry, dir, new_dentry); | 2013 | error = dir->i_op->link(old_dentry, dir, new_dentry); |
2022 | up(&old_dentry->d_inode->i_sem); | 2014 | up(&old_dentry->d_inode->i_sem); |
2023 | if (!error) { | 2015 | if (!error) |
2024 | fsnotify_create(dir, new_dentry->d_name.name); | 2016 | fsnotify_create(dir, new_dentry->d_name.name); |
2025 | security_inode_post_link(old_dentry, dir, new_dentry); | ||
2026 | } | ||
2027 | return error; | 2017 | return error; |
2028 | } | 2018 | } |
2029 | 2019 | ||
@@ -2142,11 +2132,8 @@ static int vfs_rename_dir(struct inode *old_dir, struct dentry *old_dentry, | |||
2142 | d_rehash(new_dentry); | 2132 | d_rehash(new_dentry); |
2143 | dput(new_dentry); | 2133 | dput(new_dentry); |
2144 | } | 2134 | } |
2145 | if (!error) { | 2135 | if (!error) |
2146 | d_move(old_dentry,new_dentry); | 2136 | d_move(old_dentry,new_dentry); |
2147 | security_inode_post_rename(old_dir, old_dentry, | ||
2148 | new_dir, new_dentry); | ||
2149 | } | ||
2150 | return error; | 2137 | return error; |
2151 | } | 2138 | } |
2152 | 2139 | ||
@@ -2172,7 +2159,6 @@ static int vfs_rename_other(struct inode *old_dir, struct dentry *old_dentry, | |||
2172 | /* The following d_move() should become unconditional */ | 2159 | /* The following d_move() should become unconditional */ |
2173 | if (!(old_dir->i_sb->s_type->fs_flags & FS_ODD_RENAME)) | 2160 | if (!(old_dir->i_sb->s_type->fs_flags & FS_ODD_RENAME)) |
2174 | d_move(old_dentry, new_dentry); | 2161 | d_move(old_dentry, new_dentry); |
2175 | security_inode_post_rename(old_dir, old_dentry, new_dir, new_dentry); | ||
2176 | } | 2162 | } |
2177 | if (target) | 2163 | if (target) |
2178 | up(&target->i_sem); | 2164 | up(&target->i_sem); |