diff options
-rw-r--r-- | fs/exofs/exofs.h | 2 | ||||
-rw-r--r-- | fs/exofs/inode.c | 8 | ||||
-rw-r--r-- | fs/exofs/super.c | 2 |
3 files changed, 6 insertions, 6 deletions
diff --git a/fs/exofs/exofs.h b/fs/exofs/exofs.h index 0706ce996c84..2dc925fa1010 100644 --- a/fs/exofs/exofs.h +++ b/fs/exofs/exofs.h | |||
@@ -263,7 +263,7 @@ int exofs_write_begin(struct file *file, struct address_space *mapping, | |||
263 | extern struct inode *exofs_iget(struct super_block *, unsigned long); | 263 | extern struct inode *exofs_iget(struct super_block *, unsigned long); |
264 | struct inode *exofs_new_inode(struct inode *, int); | 264 | struct inode *exofs_new_inode(struct inode *, int); |
265 | extern int exofs_write_inode(struct inode *, struct writeback_control *wbc); | 265 | extern int exofs_write_inode(struct inode *, struct writeback_control *wbc); |
266 | extern void exofs_delete_inode(struct inode *); | 266 | extern void exofs_evict_inode(struct inode *); |
267 | 267 | ||
268 | /* dir.c: */ | 268 | /* dir.c: */ |
269 | int exofs_add_link(struct dentry *, struct inode *); | 269 | int exofs_add_link(struct dentry *, struct inode *); |
diff --git a/fs/exofs/inode.c b/fs/exofs/inode.c index ccd0ce3eea75..088cb476b68a 100644 --- a/fs/exofs/inode.c +++ b/fs/exofs/inode.c | |||
@@ -1307,7 +1307,7 @@ static void delete_done(struct exofs_io_state *ios, void *p) | |||
1307 | * from the OSD here. We make sure the object was created before we try and | 1307 | * from the OSD here. We make sure the object was created before we try and |
1308 | * delete it. | 1308 | * delete it. |
1309 | */ | 1309 | */ |
1310 | void exofs_delete_inode(struct inode *inode) | 1310 | void exofs_evict_inode(struct inode *inode) |
1311 | { | 1311 | { |
1312 | struct exofs_i_info *oi = exofs_i(inode); | 1312 | struct exofs_i_info *oi = exofs_i(inode); |
1313 | struct super_block *sb = inode->i_sb; | 1313 | struct super_block *sb = inode->i_sb; |
@@ -1318,11 +1318,11 @@ void exofs_delete_inode(struct inode *inode) | |||
1318 | truncate_inode_pages(&inode->i_data, 0); | 1318 | truncate_inode_pages(&inode->i_data, 0); |
1319 | 1319 | ||
1320 | /* TODO: should do better here */ | 1320 | /* TODO: should do better here */ |
1321 | if (is_bad_inode(inode)) | 1321 | if (inode->i_nlink || is_bad_inode(inode)) |
1322 | goto no_delete; | 1322 | goto no_delete; |
1323 | 1323 | ||
1324 | inode->i_size = 0; | 1324 | inode->i_size = 0; |
1325 | clear_inode(inode); | 1325 | end_writeback(inode); |
1326 | 1326 | ||
1327 | /* if we are deleting an obj that hasn't been created yet, wait */ | 1327 | /* if we are deleting an obj that hasn't been created yet, wait */ |
1328 | if (!obj_created(oi)) { | 1328 | if (!obj_created(oi)) { |
@@ -1353,5 +1353,5 @@ void exofs_delete_inode(struct inode *inode) | |||
1353 | return; | 1353 | return; |
1354 | 1354 | ||
1355 | no_delete: | 1355 | no_delete: |
1356 | clear_inode(inode); | 1356 | end_writeback(inode); |
1357 | } | 1357 | } |
diff --git a/fs/exofs/super.c b/fs/exofs/super.c index 03149b9a5178..32cfd61def5f 100644 --- a/fs/exofs/super.c +++ b/fs/exofs/super.c | |||
@@ -743,7 +743,7 @@ static const struct super_operations exofs_sops = { | |||
743 | .alloc_inode = exofs_alloc_inode, | 743 | .alloc_inode = exofs_alloc_inode, |
744 | .destroy_inode = exofs_destroy_inode, | 744 | .destroy_inode = exofs_destroy_inode, |
745 | .write_inode = exofs_write_inode, | 745 | .write_inode = exofs_write_inode, |
746 | .delete_inode = exofs_delete_inode, | 746 | .evict_inode = exofs_evict_inode, |
747 | .put_super = exofs_put_super, | 747 | .put_super = exofs_put_super, |
748 | .write_super = exofs_write_super, | 748 | .write_super = exofs_write_super, |
749 | .sync_fs = exofs_sync_fs, | 749 | .sync_fs = exofs_sync_fs, |