mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 06:31:52 +00:00
mm/filemap.c: convert page_endio() to use a folio
Replace three calls to compound_head() with one. Link: https://lkml.kernel.org/r/20220809023256.178194-1-shaoqin.huang@intel.com Signed-off-by: Shaoqin Huang <shaoqin.huang@intel.com> Cc: Matthew Wilcox <willy@infradead.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
2ace36f0f5
commit
223ce4910b
16
mm/filemap.c
16
mm/filemap.c
@ -1633,24 +1633,26 @@ EXPORT_SYMBOL(folio_end_writeback);
|
||||
*/
|
||||
void page_endio(struct page *page, bool is_write, int err)
|
||||
{
|
||||
struct folio *folio = page_folio(page);
|
||||
|
||||
if (!is_write) {
|
||||
if (!err) {
|
||||
SetPageUptodate(page);
|
||||
folio_mark_uptodate(folio);
|
||||
} else {
|
||||
ClearPageUptodate(page);
|
||||
SetPageError(page);
|
||||
folio_clear_uptodate(folio);
|
||||
folio_set_error(folio);
|
||||
}
|
||||
unlock_page(page);
|
||||
folio_unlock(folio);
|
||||
} else {
|
||||
if (err) {
|
||||
struct address_space *mapping;
|
||||
|
||||
SetPageError(page);
|
||||
mapping = page_mapping(page);
|
||||
folio_set_error(folio);
|
||||
mapping = folio_mapping(folio);
|
||||
if (mapping)
|
||||
mapping_set_error(mapping, err);
|
||||
}
|
||||
end_page_writeback(page);
|
||||
folio_end_writeback(folio);
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(page_endio);
|
||||
|
Loading…
Reference in New Issue
Block a user