[PATCHv8 5/8] mm: break up swap_writepage() for frontswap backends

Dan Magenheimer dan.magenheimer at oracle.com
Fri Apr 5 02:22:21 UTC 2013

> From: Seth Jennings [mailto:sjenning at linux.vnet.ibm.com]
> Subject: Re: [PATCHv8 5/8] mm: break up swap_writepage() for frontswap backends
> On 04/04/2013 05:10 PM, Seth Jennings wrote:
> > swap_writepage() is currently where frontswap hooks into the swap
> > write path to capture pages with the frontswap_store() function.
> > However, if a frontswap backend wants to "resume" the writeback of
> > a page to the swap device, it can't call swap_writepage() as
> > the page will simply reenter the backend.
> >
> > This patch separates swap_writepage() into a top and bottom half, the
> > bottom half named __swap_writepage() to allow a frontswap backend,
> > like zswap, to resume writeback beyond the frontswap_store() hook.
> >
> > __add_to_swap_cache() is also made non-static so that the page for
> > which writeback is to be resumed can be added to the swap cache.
> >
> > Acked-by: Minchan Kim <minchan at kernel.org>
> > Signed-off-by: Seth Jennings <sjenning at linux.vnet.ibm.com>
> Adding Cc Bob Liu.
> I just remembered that Bob had done a repost of the 5 and 6 patches,
> outside the zswap thread,  with a small change to avoid a checkpatch
> warning.  I didn't pull that change into my version, but I should have.
> It doesn't make a functional difference, so this patch can still go
> forward and the checkpatch warning can be cleaned up in a subsequent
> patch.  If another revision of the patchset is needed for other
> reasons, I'll pull this change into the next version.
> I think Dan and Bob would be ok with their tags being applied to 5 and 6:
> Acked-by: Bob Liu <bob.liu at oracle.com>
> Reviewed-by: Dan Magenheimer <dan.magenheimer at oracle.com>
> That ok?

OK with me.  I do support these two MM patches as candidates for the
3.10 window since both zswap AND in-tree zcache depend on them,
but the silence from Andrew was a bit deafening.

Seth, perhaps you could add a #ifdef CONFIG_ZSWAP_WRITEBACK
to the zswap code and Kconfig (as zcache has done) and then
these two patches in your patchset can be reviewed

More information about the devel mailing list