diff options
| author | Guanjun <[email protected]> | 2025-02-13 05:56:12 +0000 |
|---|---|---|
| committer | Andrew Morton <[email protected]> | 2025-03-17 05:06:16 +0000 |
| commit | b23ceebd63d85135c9a5061a535ea85210f94f3f (patch) | |
| tree | 2b203ade2d0aaed978be99262b5918d5d2539b6f /mm/filemap.c | |
| parent | maple_tree: remove a BUG_ON() in mas_alloc_nodes() (diff) | |
| download | kernel-b23ceebd63d85135c9a5061a535ea85210f94f3f.tar.gz kernel-b23ceebd63d85135c9a5061a535ea85210f94f3f.zip | |
filemap: remove redundant folio_test_large check in filemap_free_folio
The folio_test_large() check in filemap_free_folio() is unnecessary
because folio_nr_pages(), which is called internally already performs this
check. Removing the redundant condition simplifies the code and avoids
double validation.
This change improves code readability and reduces unnecessary operations
in the folio freeing path.
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Guanjun <[email protected]>
Acked-by: David Hildenbrand <[email protected]>
Cc: Matthew Wilcox <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'mm/filemap.c')
| -rw-r--r-- | mm/filemap.c | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/mm/filemap.c b/mm/filemap.c index 6e3d27993b67..152993a86de3 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -227,15 +227,12 @@ void __filemap_remove_folio(struct folio *folio, void *shadow) void filemap_free_folio(struct address_space *mapping, struct folio *folio) { void (*free_folio)(struct folio *); - int refs = 1; free_folio = mapping->a_ops->free_folio; if (free_folio) free_folio(folio); - if (folio_test_large(folio)) - refs = folio_nr_pages(folio); - folio_put_refs(folio, refs); + folio_put_refs(folio, folio_nr_pages(folio)); } /** |
