Skip to content

Commit 8560cb1

Browse files
author
Matthew Wilcox (Oracle)
committed
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) <[email protected]>
1 parent 6612ed2 commit 8560cb1

File tree

3 files changed

+0
-12
lines changed

3 files changed

+0
-12
lines changed

include/linux/fs.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -357,7 +357,6 @@ struct address_space_operations {
357357
void (*invalidate_folio) (struct folio *, size_t offset, size_t len);
358358
bool (*release_folio)(struct folio *, gfp_t);
359359
void (*free_folio)(struct folio *folio);
360-
void (*freepage)(struct page *);
361360
ssize_t (*direct_IO)(struct kiocb *, struct iov_iter *iter);
362361
/*
363362
* migrate the contents of a page to the specified target. If

mm/filemap.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -225,16 +225,12 @@ void __filemap_remove_folio(struct folio *folio, void *shadow)
225225

226226
void filemap_free_folio(struct address_space *mapping, struct folio *folio)
227227
{
228-
void (*freepage)(struct page *);
229228
void (*free_folio)(struct folio *);
230229
int refs = 1;
231230

232231
free_folio = mapping->a_ops->free_folio;
233232
if (free_folio)
234233
free_folio(folio);
235-
freepage = mapping->a_ops->freepage;
236-
if (freepage)
237-
freepage(&folio->page);
238234

239235
if (folio_test_large(folio) && !folio_test_hugetlb(folio))
240236
refs = folio_nr_pages(folio);
@@ -812,7 +808,6 @@ void replace_page_cache_page(struct page *old, struct page *new)
812808
struct folio *fnew = page_folio(new);
813809
struct address_space *mapping = old->mapping;
814810
void (*free_folio)(struct folio *) = mapping->a_ops->free_folio;
815-
void (*freepage)(struct page *) = mapping->a_ops->freepage;
816811
pgoff_t offset = old->index;
817812
XA_STATE(xas, &mapping->i_pages, offset);
818813

@@ -842,8 +837,6 @@ void replace_page_cache_page(struct page *old, struct page *new)
842837
xas_unlock_irq(&xas);
843838
if (free_folio)
844839
free_folio(fold);
845-
if (freepage)
846-
freepage(old);
847840
folio_put(fold);
848841
}
849842
EXPORT_SYMBOL_GPL(replace_page_cache_page);

mm/vmscan.c

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1283,10 +1283,8 @@ static int __remove_mapping(struct address_space *mapping, struct folio *folio,
12831283
put_swap_page(&folio->page, swap);
12841284
} else {
12851285
void (*free_folio)(struct folio *);
1286-
void (*freepage)(struct page *);
12871286

12881287
free_folio = mapping->a_ops->free_folio;
1289-
freepage = mapping->a_ops->freepage;
12901288
/*
12911289
* Remember a shadow entry for reclaimed file cache in
12921290
* order to detect refaults, thus thrashing, later on.
@@ -1314,8 +1312,6 @@ static int __remove_mapping(struct address_space *mapping, struct folio *folio,
13141312

13151313
if (free_folio)
13161314
free_folio(folio);
1317-
if (freepage)
1318-
freepage(&folio->page);
13191315
}
13201316

13211317
return 1;

0 commit comments

Comments
 (0)