summaryrefslogtreecommitdiff
path: root/mm
diff options
context:
space:
mode:
authorMatthew Wilcox (Oracle) <willy@infradead.org>2022-05-05 07:43:09 +0300
committerMatthew Wilcox (Oracle) <willy@infradead.org>2022-05-10 06:12:54 +0300
commit8560cb1a7d75048af275dd23fb0cf05382b3c2b9 (patch)
treea0e2946b5fd8ee34c81f9340306a33f4c7bfbcf3 /mm
parent6612ed24a242734560f9643ccb08f2f40b6e144b (diff)
downloadlinux-8560cb1a7d75048af275dd23fb0cf05382b3c2b9.tar.xz
fs: Remove aops->freepage
All implementations now use free_folio so we can delete the callers and the method. Signed-off-by: Matthew Wilcox (Oracle) <willy@infradead.org>
Diffstat (limited to 'mm')
-rw-r--r--mm/filemap.c7
-rw-r--r--mm/vmscan.c4
2 files changed, 0 insertions, 11 deletions
diff --git a/mm/filemap.c b/mm/filemap.c
index adcdef56890f..fa0ca674450f 100644
--- a/mm/filemap.c
+++ b/mm/filemap.c
@@ -225,16 +225,12 @@ void __filemap_remove_folio(struct folio *folio, void *shadow)
void filemap_free_folio(struct address_space *mapping, struct folio *folio)
{
- void (*freepage)(struct page *);
void (*free_folio)(struct folio *);
int refs = 1;
free_folio = mapping->a_ops->free_folio;
if (free_folio)
free_folio(folio);
- freepage = mapping->a_ops->freepage;
- if (freepage)
- freepage(&folio->page);
if (folio_test_large(folio) && !folio_test_hugetlb(folio))
refs = folio_nr_pages(folio);
@@ -812,7 +808,6 @@ void replace_page_cache_page(struct page *old, struct page *new)
struct folio *fnew = page_folio(new);
struct address_space *mapping = old->mapping;
void (*free_folio)(struct folio *) = mapping->a_ops->free_folio;
- void (*freepage)(struct page *) = mapping->a_ops->freepage;
pgoff_t offset = old->index;
XA_STATE(xas, &mapping->i_pages, offset);
@@ -842,8 +837,6 @@ void replace_page_cache_page(struct page *old, struct page *new)
xas_unlock_irq(&xas);
if (free_folio)
free_folio(fold);
- if (freepage)
- freepage(old);
folio_put(fold);
}
EXPORT_SYMBOL_GPL(replace_page_cache_page);
diff --git a/mm/vmscan.c b/mm/vmscan.c
index d8a031128ad0..edc89f26b738 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -1283,10 +1283,8 @@ static int __remove_mapping(struct address_space *mapping, struct folio *folio,
put_swap_page(&folio->page, swap);
} else {
void (*free_folio)(struct folio *);
- void (*freepage)(struct page *);
free_folio = mapping->a_ops->free_folio;
- freepage = mapping->a_ops->freepage;
/*
* Remember a shadow entry for reclaimed file cache in
* order to detect refaults, thus thrashing, later on.
@@ -1314,8 +1312,6 @@ static int __remove_mapping(struct address_space *mapping, struct folio *folio,
if (free_folio)
free_folio(folio);
- if (freepage)
- freepage(&folio->page);
}
return 1;