diff options
author | Boaz Harrosh <bharrosh@panasas.com> | 2010-06-09 18:23:18 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-08-09 16:47:41 -0400 |
commit | 2f246fd0f126f3b3c23a4e6b7109350e83356bd6 (patch) | |
tree | 10cc6c830e4ffcc116faaf886e72dd3f0b73d849 /fs/exofs/file.c | |
parent | 41cce647f8dbe26941bed2158fad0839aab7a294 (diff) | |
download | kernel_samsung_smdk4412-2f246fd0f126f3b3c23a4e6b7109350e83356bd6.zip kernel_samsung_smdk4412-2f246fd0f126f3b3c23a4e6b7109350e83356bd6.tar.gz kernel_samsung_smdk4412-2f246fd0f126f3b3c23a4e6b7109350e83356bd6.tar.bz2 |
exofs: New truncate sequence
These changes are crafted based on the similar
conversion done to ext2 by Nick Piggin.
* Remove the deprecated ->truncate vector. Let exofs_setattr
take care of on-disk size updates.
* Call truncate_pagecache on the unused pages if
write_begin/end fails.
* Cleanup exofs_delete_inode that did stupid inode
writes and updates on an inode that will be
removed.
* And finally get rid of exofs_get_block. We never
had any blocks it was all for calling nobh_truncate_page.
nobh_truncate_page is not actually needed in exofs since
the last page is complete and gone, just like all the other
pages. There is no partial blocks in exofs.
I've tested with this patch, and there are no apparent
failures, so far.
CC: Nick Piggin <npiggin@suse.de>
CC: Christoph Hellwig <hch@lst.de>
Signed-off-by: Boaz Harrosh <bharrosh@panasas.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/exofs/file.c')
-rw-r--r-- | fs/exofs/file.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/fs/exofs/file.c b/fs/exofs/file.c index fef6899..f9bfe2b 100644 --- a/fs/exofs/file.c +++ b/fs/exofs/file.c @@ -86,6 +86,5 @@ const struct file_operations exofs_file_operations = { }; const struct inode_operations exofs_file_inode_operations = { - .truncate = exofs_truncate, .setattr = exofs_setattr, }; |