mirror of https://gitee.com/openkylin/linux.git
fs/buffer.c: remove block_write_full_page_endio()
The last in-tree caller of block_write_full_page_endio() was removed in January 2013. It's time to remove the EXPORT_SYMBOL, which leaves block_write_full_page() as the only caller of block_write_full_page_endio(), so inline block_write_full_page_endio() into block_write_full_page(). Signed-off-by: Matthew Wilcox <matthew.r.wilcox@intel.com> Cc: Hugh Dickins <hughd@google.com> Cc: Dave Chinner <david@fromorbit.com> Cc: Dheeraj Reddy <dheeraj.reddy@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
399ba0b956
commit
1b938c0827
19
fs/buffer.c
19
fs/buffer.c
|
@ -2879,10 +2879,9 @@ EXPORT_SYMBOL(block_truncate_page);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The generic ->writepage function for buffer-backed address_spaces
|
* The generic ->writepage function for buffer-backed address_spaces
|
||||||
* this form passes in the end_io handler used to finish the IO.
|
|
||||||
*/
|
*/
|
||||||
int block_write_full_page_endio(struct page *page, get_block_t *get_block,
|
int block_write_full_page(struct page *page, get_block_t *get_block,
|
||||||
struct writeback_control *wbc, bh_end_io_t *handler)
|
struct writeback_control *wbc)
|
||||||
{
|
{
|
||||||
struct inode * const inode = page->mapping->host;
|
struct inode * const inode = page->mapping->host;
|
||||||
loff_t i_size = i_size_read(inode);
|
loff_t i_size = i_size_read(inode);
|
||||||
|
@ -2892,7 +2891,7 @@ int block_write_full_page_endio(struct page *page, get_block_t *get_block,
|
||||||
/* Is the page fully inside i_size? */
|
/* Is the page fully inside i_size? */
|
||||||
if (page->index < end_index)
|
if (page->index < end_index)
|
||||||
return __block_write_full_page(inode, page, get_block, wbc,
|
return __block_write_full_page(inode, page, get_block, wbc,
|
||||||
handler);
|
end_buffer_async_write);
|
||||||
|
|
||||||
/* Is the page fully outside i_size? (truncate in progress) */
|
/* Is the page fully outside i_size? (truncate in progress) */
|
||||||
offset = i_size & (PAGE_CACHE_SIZE-1);
|
offset = i_size & (PAGE_CACHE_SIZE-1);
|
||||||
|
@ -2915,17 +2914,7 @@ int block_write_full_page_endio(struct page *page, get_block_t *get_block,
|
||||||
* writes to that region are not written out to the file."
|
* writes to that region are not written out to the file."
|
||||||
*/
|
*/
|
||||||
zero_user_segment(page, offset, PAGE_CACHE_SIZE);
|
zero_user_segment(page, offset, PAGE_CACHE_SIZE);
|
||||||
return __block_write_full_page(inode, page, get_block, wbc, handler);
|
return __block_write_full_page(inode, page, get_block, wbc,
|
||||||
}
|
|
||||||
EXPORT_SYMBOL(block_write_full_page_endio);
|
|
||||||
|
|
||||||
/*
|
|
||||||
* The generic ->writepage function for buffer-backed address_spaces
|
|
||||||
*/
|
|
||||||
int block_write_full_page(struct page *page, get_block_t *get_block,
|
|
||||||
struct writeback_control *wbc)
|
|
||||||
{
|
|
||||||
return block_write_full_page_endio(page, get_block, wbc,
|
|
||||||
end_buffer_async_write);
|
end_buffer_async_write);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(block_write_full_page);
|
EXPORT_SYMBOL(block_write_full_page);
|
||||||
|
|
|
@ -429,7 +429,7 @@ int ext4_bio_write_page(struct ext4_io_submit *io,
|
||||||
block_start = bh_offset(bh);
|
block_start = bh_offset(bh);
|
||||||
if (block_start >= len) {
|
if (block_start >= len) {
|
||||||
/*
|
/*
|
||||||
* Comments copied from block_write_full_page_endio:
|
* Comments copied from block_write_full_page:
|
||||||
*
|
*
|
||||||
* The page straddles i_size. It must be zeroed out on
|
* The page straddles i_size. It must be zeroed out on
|
||||||
* each and every writepage invocation because it may
|
* each and every writepage invocation because it may
|
||||||
|
|
|
@ -828,7 +828,7 @@ static int ocfs2_write_zero_page(struct inode *inode, u64 abs_from,
|
||||||
/*
|
/*
|
||||||
* fs-writeback will release the dirty pages without page lock
|
* fs-writeback will release the dirty pages without page lock
|
||||||
* whose offset are over inode size, the release happens at
|
* whose offset are over inode size, the release happens at
|
||||||
* block_write_full_page_endio().
|
* block_write_full_page().
|
||||||
*/
|
*/
|
||||||
i_size_write(inode, abs_to);
|
i_size_write(inode, abs_to);
|
||||||
inode->i_blocks = ocfs2_inode_sector_count(inode);
|
inode->i_blocks = ocfs2_inode_sector_count(inode);
|
||||||
|
|
|
@ -207,8 +207,6 @@ void block_invalidatepage(struct page *page, unsigned int offset,
|
||||||
unsigned int length);
|
unsigned int length);
|
||||||
int block_write_full_page(struct page *page, get_block_t *get_block,
|
int block_write_full_page(struct page *page, get_block_t *get_block,
|
||||||
struct writeback_control *wbc);
|
struct writeback_control *wbc);
|
||||||
int block_write_full_page_endio(struct page *page, get_block_t *get_block,
|
|
||||||
struct writeback_control *wbc, bh_end_io_t *handler);
|
|
||||||
int block_read_full_page(struct page*, get_block_t*);
|
int block_read_full_page(struct page*, get_block_t*);
|
||||||
int block_is_partially_uptodate(struct page *page, unsigned long from,
|
int block_is_partially_uptodate(struct page *page, unsigned long from,
|
||||||
unsigned long count);
|
unsigned long count);
|
||||||
|
|
Loading…
Reference in New Issue