find_lock_entries() already only returned the head page of folios, so convert it to return a folio_batch instead of a pagevec. That cascades through converting truncate_inode_pages_range() to delete_from_page_cache_batch() and page_cache_delete_batch().
Showing the changes to include (1 of 6 files). Show all
Unified · Split
| @@ -16,7 +16,7 @@ · 15 unmodified lines | |||
| 16 | #include <linux/hardirq.h> /* for in_interrupt() */ | 16 | #include <linux/hardirq.h> /* for in_interrupt() */ |
| 17 | #include <linux/hugetlb_inline.h> | 17 | #include <linux/hugetlb_inline.h> |
| 18 | 18 | ||
| 19 | struct pagevec; | 19 | struct folio_batch; |
| 20 | 20 | ||
| 21 | static inline bool mapping_empty(struct address_space *mapping) | 21 | static inline bool mapping_empty(struct address_space *mapping) |
| 22 | { | 22 | { |
| @@ -936,7 +936,7 @@ static inline void __delete_from_page_cache(struct page *page, void *shadow) · 913 unmodified lines | |||
| 936 | } | 936 | } |
| 937 | void replace_page_cache_page(struct page *old, struct page *new); | 937 | void replace_page_cache_page(struct page *old, struct page *new); |
| 938 | void delete_from_page_cache_batch(struct address_space *mapping, | 938 | void delete_from_page_cache_batch(struct address_space *mapping, |
| 939 | struct pagevec *pvec); | 939 | struct folio_batch *fbatch); |
| 940 | int try_to_release_page(struct page *page, gfp_t gfp); | 940 | int try_to_release_page(struct page *page, gfp_t gfp); |
| 941 | bool filemap_release_folio(struct folio *folio, gfp_t gfp); | 941 | bool filemap_release_folio(struct folio *folio, gfp_t gfp); |
| 942 | loff_t mapping_seek_hole_data(struct address_space *, loff_t start, loff_t end, | 942 | loff_t mapping_seek_hole_data(struct address_space *, loff_t start, loff_t end, |