diff options
author | Christoph Hellwig <hch@lst.de> | 2010-06-04 05:29:57 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-08-09 16:47:32 -0400 |
commit | 6e1db88d536adcbbfe562b2d4b7d6425784fff12 (patch) | |
tree | 8cfcb5a6190722db6249b2e4978f39247975abcf /fs/sysv | |
parent | f4e420dc423148fba637af1ab618fa8896dfb2d6 (diff) |
introduce __block_write_begin
Split up the block_write_begin implementation - __block_write_begin is a new
trivial wrapper for block_prepare_write that always takes an already
allocated page and can be either called from block_write_begin or filesystem
code that already has a page allocated. Remove the handling of already
allocated pages from block_write_begin after switching all callers that
do it to __block_write_begin.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/sysv')
-rw-r--r-- | fs/sysv/itree.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/fs/sysv/itree.c b/fs/sysv/itree.c index 4068f485cfd6..82a005c3d7eb 100644 --- a/fs/sysv/itree.c +++ b/fs/sysv/itree.c | |||
@@ -461,8 +461,7 @@ static int sysv_readpage(struct file *file, struct page *page) | |||
461 | 461 | ||
462 | int sysv_prepare_chunk(struct page *page, loff_t pos, unsigned len) | 462 | int sysv_prepare_chunk(struct page *page, loff_t pos, unsigned len) |
463 | { | 463 | { |
464 | return block_write_begin_newtrunc(NULL, page->mapping, pos, len, 0, | 464 | return __block_write_begin(page, pos, len, get_block); |
465 | &page, NULL, get_block); | ||
466 | } | 465 | } |
467 | 466 | ||
468 | static int sysv_write_begin(struct file *file, struct address_space *mapping, | 467 | static int sysv_write_begin(struct file *file, struct address_space *mapping, |