mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-01 10:42:11 +00:00
memory-failure: use a folio in me_pagecache_dirty()
Replaces three hidden calls to compound_head() with one visible one. Link: https://lkml.kernel.org/r/20231117161447.2461643-3-willy@infradead.org Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org> Cc: Naoya Horiguchi <naoya.horiguchi@nec.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
3d47e31790
commit
6304b531cd
@ -1138,15 +1138,16 @@ static int me_pagecache_dirty(struct page_state *ps, struct page *p)
|
|||||||
*/
|
*/
|
||||||
static int me_swapcache_dirty(struct page_state *ps, struct page *p)
|
static int me_swapcache_dirty(struct page_state *ps, struct page *p)
|
||||||
{
|
{
|
||||||
|
struct folio *folio = page_folio(p);
|
||||||
int ret;
|
int ret;
|
||||||
bool extra_pins = false;
|
bool extra_pins = false;
|
||||||
|
|
||||||
ClearPageDirty(p);
|
folio_clear_dirty(folio);
|
||||||
/* Trigger EIO in shmem: */
|
/* Trigger EIO in shmem: */
|
||||||
ClearPageUptodate(p);
|
folio_clear_uptodate(folio);
|
||||||
|
|
||||||
ret = delete_from_lru_cache(p) ? MF_FAILED : MF_DELAYED;
|
ret = delete_from_lru_cache(p) ? MF_FAILED : MF_DELAYED;
|
||||||
unlock_page(p);
|
folio_unlock(folio);
|
||||||
|
|
||||||
if (ret == MF_DELAYED)
|
if (ret == MF_DELAYED)
|
||||||
extra_pins = true;
|
extra_pins = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user