Re: [PATCH 3/4] mm: zswap: add supporting for zsmalloc

From: Bob Liu
Date: Mon Aug 19 2013 - 21:13:53 EST



On 08/20/2013 12:59 AM, Seth Jennings wrote:
> On Sun, Aug 18, 2013 at 04:40:48PM +0800, Bob Liu wrote:
>> Make zswap can use zsmalloc as its allocater.
>> But note that zsmalloc don't reclaim any zswap pool pages mandatory, if zswap
>> pool gets full, frontswap_store will be refused unless frontswap_get happened
>> and freed some space.
>>
>> The reason of don't implement reclaiming zsmalloc pages from zswap pool is there
>> is no requiremnet currently.
>> If we want to do mandatory reclaim, we have to write those pages to real backend
>> swap devices. But most of current users of zsmalloc are from embeded world,
>> there is even no real backend swap device.
>> This action is also the same as privous zram!
>>
>> For several area, zsmalloc has unpredictable performance characteristics when
>> reclaiming a single page, then CONFIG_ZBUD are suggested.
>
> Looking at this patch on its own, it does show how simple it could be
> for zswap to support zsmalloc. So thanks!
>
> However, I don't like all the ifdefs scattered everywhere. I'd like to
> have a ops structure (e.g. struct zswap_alloc_ops) instead and just
> switch ops based on the CONFIG flag. Or better yet, have it boot-time
> selectable instead of build-time.
>

I don't like the ifdefs neither. But I didn't find a better way to
replace them since the data structures and API of zbud and zsmalloc are
different. I can take a try using zswap_alloc_ops.

--
Regards,
-Bob
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/