diff options
Diffstat (limited to 'fs/qnx4/namei.c')
-rw-r--r-- | fs/qnx4/namei.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/fs/qnx4/namei.c b/fs/qnx4/namei.c index c3d83f67154a..733cdf01d645 100644 --- a/fs/qnx4/namei.c +++ b/fs/qnx4/namei.c | |||
@@ -186,11 +186,10 @@ int qnx4_rmdir(struct inode *dir, struct dentry *dentry) | |||
186 | memset(de->di_fname, 0, sizeof de->di_fname); | 186 | memset(de->di_fname, 0, sizeof de->di_fname); |
187 | de->di_mode = 0; | 187 | de->di_mode = 0; |
188 | mark_buffer_dirty(bh); | 188 | mark_buffer_dirty(bh); |
189 | inode->i_nlink = 0; | 189 | clear_nlink(inode); |
190 | mark_inode_dirty(inode); | 190 | mark_inode_dirty(inode); |
191 | inode->i_ctime = dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; | 191 | inode->i_ctime = dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; |
192 | dir->i_nlink--; | 192 | inode_dec_link_count(dir); |
193 | mark_inode_dirty(dir); | ||
194 | retval = 0; | 193 | retval = 0; |
195 | 194 | ||
196 | end_rmdir: | 195 | end_rmdir: |
@@ -234,9 +233,8 @@ int qnx4_unlink(struct inode *dir, struct dentry *dentry) | |||
234 | mark_buffer_dirty(bh); | 233 | mark_buffer_dirty(bh); |
235 | dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; | 234 | dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; |
236 | mark_inode_dirty(dir); | 235 | mark_inode_dirty(dir); |
237 | inode->i_nlink--; | ||
238 | inode->i_ctime = dir->i_ctime; | 236 | inode->i_ctime = dir->i_ctime; |
239 | mark_inode_dirty(inode); | 237 | inode_dec_link_count(inode); |
240 | retval = 0; | 238 | retval = 0; |
241 | 239 | ||
242 | end_unlink: | 240 | end_unlink: |