diff options
Diffstat (limited to 'fs/jffs/inode-v23.c')
-rw-r--r-- | fs/jffs/inode-v23.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/jffs/inode-v23.c b/fs/jffs/inode-v23.c index f5cf9c93e243..3f7899ea4cba 100644 --- a/fs/jffs/inode-v23.c +++ b/fs/jffs/inode-v23.c | |||
@@ -1052,9 +1052,8 @@ jffs_remove(struct inode *dir, struct dentry *dentry, int type) | |||
1052 | 1052 | ||
1053 | dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; | 1053 | dir->i_ctime = dir->i_mtime = CURRENT_TIME_SEC; |
1054 | mark_inode_dirty(dir); | 1054 | mark_inode_dirty(dir); |
1055 | inode->i_nlink--; | ||
1056 | inode->i_ctime = dir->i_ctime; | 1055 | inode->i_ctime = dir->i_ctime; |
1057 | mark_inode_dirty(inode); | 1056 | inode_dec_link_count(inode); |
1058 | 1057 | ||
1059 | d_delete(dentry); /* This also frees the inode */ | 1058 | d_delete(dentry); /* This also frees the inode */ |
1060 | 1059 | ||
@@ -1632,8 +1631,10 @@ static const struct file_operations jffs_file_operations = | |||
1632 | { | 1631 | { |
1633 | .open = generic_file_open, | 1632 | .open = generic_file_open, |
1634 | .llseek = generic_file_llseek, | 1633 | .llseek = generic_file_llseek, |
1635 | .read = generic_file_read, | 1634 | .read = do_sync_read, |
1636 | .write = generic_file_write, | 1635 | .aio_read = generic_file_aio_read, |
1636 | .write = do_sync_write, | ||
1637 | .aio_write = generic_file_aio_write, | ||
1637 | .ioctl = jffs_ioctl, | 1638 | .ioctl = jffs_ioctl, |
1638 | .mmap = generic_file_readonly_mmap, | 1639 | .mmap = generic_file_readonly_mmap, |
1639 | .fsync = jffs_fsync, | 1640 | .fsync = jffs_fsync, |