Re: [PATCH] mm: kill frontswap

From: Johannes Weiner
Date: Mon Jul 17 2023 - 12:02:39 EST


On Mon, Jul 17, 2023 at 04:31:42PM +0200, Vlastimil Babka wrote:
> On 7/17/23 16:12, Johannes Weiner wrote:
> > On Sat, Jul 15, 2023 at 04:42:13AM +0100, Matthew Wilcox wrote:
> >> On Fri, Jul 14, 2023 at 03:46:08PM -0400, Johannes Weiner wrote:
> >> > diff --git a/mm/zswap.c b/mm/zswap.c
> >> > index 62195f72bf56..1b0128060792 100644
> >> > --- a/mm/zswap.c
> >> > +++ b/mm/zswap.c
> >> > @@ -2,7 +2,7 @@
> >> > /*
> >> > * zswap.c - zswap driver file
> >> > *
> >> > - * zswap is a backend for frontswap that takes pages that are in the process
> >> > + * zswap is a cache that takes pages that are in the process
> >> > * of being swapped out and attempts to compress and store them in a
> >> > * RAM-based memory pool. This can result in a significant I/O reduction on
> >> > * the swap device and, in the case where decompressing from RAM is faster
> >> > @@ -20,7 +20,6 @@
> >> > #include <linux/spinlock.h>
> >> > #include <linux/types.h>
> >> > #include <linux/atomic.h>
> >> > -#include <linux/frontswap.h>
> >> > #include <linux/rbtree.h>
> >> > #include <linux/swap.h>
> >> > #include <linux/crypto.h>
> >>
> >> To make this patch compile, I had to add zswap.h to the include list.
> >
> > I can fix that up, but I'm curious what kind of failure you saw. It
> > built fine for me, not even a warning.
>
> I get warnings but only with W=1 (worth fixing up though).
>
> CC mm/zswap.o
> mm/zswap.c:1203:6: warning: no previous prototype for ‘zswap_store’ [-Wmissing-prototypes]
> 1203 | bool zswap_store(struct page *page)
> | ^~~~~~~~~~~
> mm/zswap.c:1382:6: warning: no previous prototype for ‘zswap_load’ [-Wmissing-prototypes]
> 1382 | bool zswap_load(struct page *page)
> | ^~~~~~~~~~
> mm/zswap.c:1470:6: warning: no previous prototype for ‘zswap_invalidate’ [-Wmissing-prototypes]
> 1470 | void zswap_invalidate(int type, pgoff_t offset)
> | ^~~~~~~~~~~~~~~~
> mm/zswap.c:1487:6: warning: no previous prototype for ‘zswap_swapon’ [-Wmissing-prototypes]
> 1487 | void zswap_swapon(int type)
> | ^~~~~~~~~~~~
> mm/zswap.c:1502:6: warning: no previous prototype for ‘zswap_swapoff’ [-Wmissing-prototypes]
> 1502 | void zswap_swapoff(int type)
> | ^~~~~~~~~~~~~

Ah, thanks!

Here is version 2 with the missing include:
---