[PATCH] mm: Remove stray references to struct pagevec

Tal Zussman posted 1 patch 1 month, 2 weeks ago
fs/afs/internal.h       | 1 -
fs/f2fs/f2fs.h          | 2 --
include/linux/pagevec.h | 2 +-
include/linux/swap.h    | 2 --
4 files changed, 1 insertion(+), 6 deletions(-)
[PATCH] mm: Remove stray references to struct pagevec
Posted by Tal Zussman 1 month, 2 weeks ago
struct pagevec was removed in commit 1e0877d58b1e ("mm: remove struct
pagevec"). Remove remaining forward declarations and change
__folio_batch_release()'s declaration to match its definition.

Signed-off-by: Tal Zussman <tz2294@columbia.edu>
---
Happy to rename PAGEVEC_SIZE and pagevec.h if desired too, but that'd be
~65 more lines of churn... Although it looks like there are plenty of .c
files that include it for no reason, so could be a good opportunity to
remove those.
---
 fs/afs/internal.h       | 1 -
 fs/f2fs/f2fs.h          | 2 --
 include/linux/pagevec.h | 2 +-
 include/linux/swap.h    | 2 --
 4 files changed, 1 insertion(+), 6 deletions(-)

diff --git a/fs/afs/internal.h b/fs/afs/internal.h
index 009064b8d661..599353c33337 100644
--- a/fs/afs/internal.h
+++ b/fs/afs/internal.h
@@ -31,7 +31,6 @@
 
 #define AFS_CELL_MAX_ADDRS 15
 
-struct pagevec;
 struct afs_call;
 struct afs_vnode;
 struct afs_server_probe;
diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
index bb34e864d0ef..d9e8531a5301 100644
--- a/fs/f2fs/f2fs.h
+++ b/fs/f2fs/f2fs.h
@@ -28,8 +28,6 @@
 #include <linux/fscrypt.h>
 #include <linux/fsverity.h>
 
-struct pagevec;
-
 #ifdef CONFIG_F2FS_CHECK_FS
 #define f2fs_bug_on(sbi, condition)	BUG_ON(condition)
 #else
diff --git a/include/linux/pagevec.h b/include/linux/pagevec.h
index 63be5a451627..007affabf335 100644
--- a/include/linux/pagevec.h
+++ b/include/linux/pagevec.h
@@ -93,7 +93,7 @@ static inline struct folio *folio_batch_next(struct folio_batch *fbatch)
 	return fbatch->folios[fbatch->i++];
 }
 
-void __folio_batch_release(struct folio_batch *pvec);
+void __folio_batch_release(struct folio_batch *fbatch);
 
 static inline void folio_batch_release(struct folio_batch *fbatch)
 {
diff --git a/include/linux/swap.h b/include/linux/swap.h
index 0effe3cc50f5..4b1f13b5bbad 100644
--- a/include/linux/swap.h
+++ b/include/linux/swap.h
@@ -20,8 +20,6 @@ struct notifier_block;
 
 struct bio;
 
-struct pagevec;
-
 #define SWAP_FLAG_PREFER	0x8000	/* set if swap priority specified */
 #define SWAP_FLAG_PRIO_MASK	0x7fff
 #define SWAP_FLAG_DISCARD	0x10000 /* enable discard for swap */

---
base-commit: 957a3fab8811b455420128ea5f41c51fd23eb6c7
change-id: 20260225-pagevec_cleanup-d47c16cb0f2d

Best regards,
-- 
Tal Zussman <tz2294@columbia.edu>
Re: [PATCH] mm: Remove stray references to struct pagevec
Posted by Chris Li 1 month, 2 weeks ago
Thanks for doing this.

On Wed, Feb 25, 2026 at 9:57 AM Tal Zussman <tz2294@columbia.edu> wrote:
>
> struct pagevec was removed in commit 1e0877d58b1e ("mm: remove struct
> pagevec"). Remove remaining forward declarations and change
> __folio_batch_release()'s declaration to match its definition.
>
> Signed-off-by: Tal Zussman <tz2294@columbia.edu>

Acked-by: Chris Li <chrisl@kernel.org>

Chris
Re: [PATCH] mm: Remove stray references to struct pagevec
Posted by David Hildenbrand (Arm) 1 month, 2 weeks ago
On 2/25/26 18:57, Tal Zussman wrote:
> struct pagevec was removed in commit 1e0877d58b1e ("mm: remove struct
> pagevec"). Remove remaining forward declarations and change
> __folio_batch_release()'s declaration to match its definition.
> 
> Signed-off-by: Tal Zussman <tz2294@columbia.edu>

Acked-by: David Hildenbrand (Arm) <david@kernel.org>

-- 
Cheers,

David
Re: [PATCH] mm: Remove stray references to struct pagevec
Posted by Matthew Wilcox 1 month, 2 weeks ago
On Wed, Feb 25, 2026 at 12:57:16PM -0500, Tal Zussman wrote:
> struct pagevec was removed in commit 1e0877d58b1e ("mm: remove struct
> pagevec"). Remove remaining forward declarations and change
> __folio_batch_release()'s declaration to match its definition.
> 
> Signed-off-by: Tal Zussman <tz2294@columbia.edu>

Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>

> ---
> Happy to rename PAGEVEC_SIZE and pagevec.h if desired too, but that'd be
> ~65 more lines of churn... Although it looks like there are plenty of .c
> files that include it for no reason, so could be a good opportunity to
> remove those.

Yes, there's lots of cleanup work here that I didn't get around to!
Thanks for taking on this much, and any more work you want to do in this
area will be lovely.
Re: [PATCH] mm: Remove stray references to struct pagevec
Posted by Tal Zussman 1 month, 2 weeks ago
On Wed, Feb 25, 2026 at 3:47 PM Matthew Wilcox <willy@infradead.org> wrote:
> On Wed, Feb 25, 2026 at 12:57:16PM -0500, Tal Zussman wrote:
> > struct pagevec was removed in commit 1e0877d58b1e ("mm: remove struct
> > pagevec"). Remove remaining forward declarations and change
> > __folio_batch_release()'s declaration to match its definition.
> >
> > Signed-off-by: Tal Zussman <tz2294@columbia.edu>
>
> Reviewed-by: Matthew Wilcox (Oracle) <willy@infradead.org>
>
> > ---
> > Happy to rename PAGEVEC_SIZE and pagevec.h if desired too, but that'd be
> > ~65 more lines of churn... Although it looks like there are plenty of .c
> > files that include it for no reason, so could be a good opportunity to
> > remove those.
>
> Yes, there's lots of cleanup work here that I didn't get around to!
> Thanks for taking on this much, and any more work you want to do in this
> area will be lovely.

Thanks! Just sent a v2 with 3 more cleanup patches.