Re: [PATCH 0/3] zsmalloc: small compaction improvements

From: Minchan Kim
Date: Mon Jul 13 2015 - 19:36:16 EST


Hello Sergey,

On Sat, Jul 11, 2015 at 06:45:29PM +0900, Sergey Senozhatsky wrote:
> Hello,
>
> First two patches introduce new zsmalloc zs_pages_to_compact()
> symbol and change zram's `compact' sysfs attribute to be
> read-write:
> -- write triggers compaction, no changes
> -- read returns the number of pages that compaction can
> potentially free
>
> This lets user space to make a bit better decisions and to
> avoid unneeded (which will not result in any significant
> memory savings) compaction calls:
>
> Example:
>
> if [ `cat /sys/block/zram<id>/compact` -gt 10 ]; then
> echo 1 > /sys/block/zram<id>/compact;
> fi
>
> Up until now user space could not tell whether compaction
> will result in any gain.

First of all, thanks for the looking this.

Question:

What is motivation?
IOW, did you see big overhead by user-triggered compaction? so,
do you want to throttle it by userspace?

>
> The third patch removes class locking around zs_can_compact()
> in zs_pages_to_compact(), the motivation and details are
> provided in the commit message.
>
> Sergey Senozhatsky (3):
> zsmalloc: factor out zs_pages_to_compact()
> zram: make compact a read-write sysfs node
> zsmalloc: do not take class lock in zs_pages_to_compact()
>
> Documentation/ABI/testing/sysfs-block-zram | 7 +++---
> Documentation/blockdev/zram.txt | 4 +++-
> drivers/block/zram/zram_drv.c | 16 ++++++++++++-
> include/linux/zsmalloc.h | 1 +
> mm/zsmalloc.c | 37 +++++++++++++++++-------------
> 5 files changed, 44 insertions(+), 21 deletions(-)
>
> --
> 2.4.5
>

--
Kind regards,
Minchan Kim
--
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/