On Sat, Apr 19, 2014 at 11:52 PM, Dan Streetman <ddstreet@xxxxxxxx> wrote: > In order to allow zswap users to choose between zbud and zsmalloc for > the compressed storage pool, this patch set adds a new api "zpool" that > provides an interface to both zbud and zsmalloc. Only a minor change > to zbud's interface was needed, as detailed in the first patch; > zsmalloc required shrinking to be added and a minor interface change, > as detailed in the second patch. > > I believe Seth originally was using zsmalloc for swap, but there were > concerns about how significant the impact of shrinking zsmalloc would > be when zswap had to start reclaiming pages. That still may be an > issue, but this at least allows users to choose themselves whether > they want a lower-density or higher-density compressed storage medium. > At least for situations where zswap reclaim is never or rarely reached, > it probably makes sense to use the higher density of zsmalloc. > > Note this patch series does not change zram to use zpool, although that > change should be possible as well. I think this idea is acceptable, because for embedded devices reclaiming is risky due to its write lifetime. By using zsmalloc, zswap user can not only take the benefit of higher-density compressed storage but aslo supporting the GFP_HIGHMEM in 32bit system. I will pay attention to this patch set and give my opinion after my review. Thanks for your work > > Dan Streetman (4): > mm: zpool: zbud_alloc() minor param change > mm: zpool: implement zsmalloc shrinking > mm: zpool: implement common zpool api to zbud/zsmalloc > mm: zpool: update zswap to use zpool > > drivers/block/zram/zram_drv.c | 2 +- > include/linux/zbud.h | 3 +- > include/linux/zpool.h | 166 ++++++++++++++++++ > include/linux/zsmalloc.h | 7 +- > mm/Kconfig | 43 +++-- > mm/Makefile | 1 + > mm/zbud.c | 28 ++-- > mm/zpool.c | 380 ++++++++++++++++++++++++++++++++++++++++++ > mm/zsmalloc.c | 168 +++++++++++++++++-- > mm/zswap.c | 70 ++++---- > 10 files changed, 787 insertions(+), 81 deletions(-) > create mode 100644 include/linux/zpool.h > create mode 100644 mm/zpool.c > > -- > 1.8.3.1 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>