All of lore.kernel.org
 help / color / mirror / Atom feed
From: Minchan Kim <minchan@kernel.org>
To: Bob Liu <bob.liu@oracle.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jens Axboe <axboe@kernel.dk>,
	Seth Jennings <sjenning@linux.vnet.ibm.com>,
	Nitin Gupta <ngupta@vflare.org>,
	Konrad Rzeszutek Wilk <konrad@darnok.org>,
	Luigi Semenzato <semenzato@google.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	Mel Gorman <mgorman@suse.de>,
	lliubbo@gmail.com
Subject: Re: [PATCH v7 0/5] zram/zsmalloc promotion
Date: Thu, 22 Aug 2013 10:11:36 +0900	[thread overview]
Message-ID: <20130822011136.GC4665@bbox> (raw)
In-Reply-To: <521495E5.7010109@oracle.com>

On Wed, Aug 21, 2013 at 06:26:45PM +0800, Bob Liu wrote:
> On 08/21/2013 05:24 PM, Bob Liu wrote:
> > Hi Minchan,
> > 
> > On 08/21/2013 02:16 PM, Minchan Kim wrote:
> >> It's 7th trial of zram/zsmalloc promotion.
> >> I rewrote cover-letter totally based on previous discussion.
> >>
> >> The main reason to prevent zram promotion was no review of
> >> zsmalloc part while Jens, block maintainer, already acked
> >> zram part.
> >>
> >> At that time, zsmalloc was used for zram, zcache and zswap so
> >> everybody wanted to make it general and at last, Mel reviewed it
> >> when zswap was submitted to merge mainline a few month ago.
> >> Most of review was related to zswap writeback mechanism which
> >> can pageout compressed page in memory into real swap storage
> >> in runtime and the conclusion was that zsmalloc isn't good for
> >> zswap writeback so zswap borrowed zbud allocator from zcache to
> >> replace zsmalloc. The zbud is bad for memory compression ratio(2)
> >> but it's very predictable behavior because we can expect a zpage
> >> includes just two pages as maximum. Other reviews were not major. 
> >> http://lkml.indiana.edu/hypermail/linux/kernel/1304.1/04334.html
> >>
> >> Zcache doesn't use zsmalloc either so zsmalloc's user is only
> >> zram now so this patchset moves it into zsmalloc directory.
> >> Recently, Bob tried to move zsmalloc under mm directory to unify
> >> zram and zswap with adding pseudo block device in zswap(It's
> >> very weired to me) but he was simple ignoring zram's block device
> >> (a.k.a zram-blk) feature and considered only swap usecase of zram,
> >> in turn, it lose zram's good concept.
> >>
> > 
> > Yes, I didn't notice the feature that zram can be used as a normal block
> > device.
> > 
> > 
> >> Mel raised an another issue in v6, "maintainance headache".
> >> He claimed zswap and zram has a similar goal that is to compresss
> >> swap pages so if we promote zram, maintainance headache happens
> >> sometime by diverging implementaion between zswap and zram
> >> so that he want to unify zram and zswap. For it, he want zswap
> >> to implement pseudo block device like Bob did to emulate zram so
> >> zswap can have an advantage of writeback as well as zram's benefit.
> > 
> > If consider zram as a swap device only, I still think it's better to add
> > a pseudo block device to zswap and just disable the writeback of zswap.
> > 
> > But I have no idea of zram's block device feature.
> > 
> 
> BTW: I think the original/main purpose that zram was introduced is for
> swapping. Is there any real users using zram as a normal block device

I don't know but when I read http://lwn.net/Articles/334649/, it aimed
for compressing page caches as well as swap pages but it made widespread
hooks in core (I guess that's why zcache had a birth later by Nitin and Dan)
so reviewers guided him to support anon pages only to merge it.
And at that time, it was a specific virtual block device for only supporting
swap. AFAIRC, akpm suggested to make it general block device so other party
can have a benefit.

You can type "zram tmp" in google and will find many article related
to use zram as tmp and I have been received some questions/reports
from anonymous guys by private mail. And Jorome, Redhat guy, has
contributed that part like partial I/O.

> instead of swap?
> For normal usage, maybe we can extend ramdisk with compression feature.

Maybe, but I don't see any advantage. The ramdisk is really simple
and there is no part to share zram code. Morever, zram have a potential
to extend other features like asynchronous, defragmentation, and
multiple compressor. I don't want to make simple ramdisk bloating and
complicated so every distro could enable it.

Another thing is device name in linux is rather straightforward to
understand like "dd if=/dev/zero of=/dev/null" but if we support
compression feature of ramdisk, "dd if=/dev/ram0 of=/dev/ram1"?
Which is compression ramdisk? How could normal user can identify it?

I think there is no benefit.

> 
> -- 
> Regards,
> -Bob
> 
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org.  For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

-- 
Kind regards,
Minchan Kim

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

WARNING: multiple messages have this Message-ID (diff)
From: Minchan Kim <minchan@kernel.org>
To: Bob Liu <bob.liu@oracle.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jens Axboe <axboe@kernel.dk>,
	Seth Jennings <sjenning@linux.vnet.ibm.com>,
	Nitin Gupta <ngupta@vflare.org>,
	Konrad Rzeszutek Wilk <konrad@darnok.org>,
	Luigi Semenzato <semenzato@google.com>,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	Pekka Enberg <penberg@cs.helsinki.fi>,
	Mel Gorman <mgorman@suse.de>,
	lliubbo@gmail.com
Subject: Re: [PATCH v7 0/5] zram/zsmalloc promotion
Date: Thu, 22 Aug 2013 10:11:36 +0900	[thread overview]
Message-ID: <20130822011136.GC4665@bbox> (raw)
In-Reply-To: <521495E5.7010109@oracle.com>

On Wed, Aug 21, 2013 at 06:26:45PM +0800, Bob Liu wrote:
> On 08/21/2013 05:24 PM, Bob Liu wrote:
> > Hi Minchan,
> > 
> > On 08/21/2013 02:16 PM, Minchan Kim wrote:
> >> It's 7th trial of zram/zsmalloc promotion.
> >> I rewrote cover-letter totally based on previous discussion.
> >>
> >> The main reason to prevent zram promotion was no review of
> >> zsmalloc part while Jens, block maintainer, already acked
> >> zram part.
> >>
> >> At that time, zsmalloc was used for zram, zcache and zswap so
> >> everybody wanted to make it general and at last, Mel reviewed it
> >> when zswap was submitted to merge mainline a few month ago.
> >> Most of review was related to zswap writeback mechanism which
> >> can pageout compressed page in memory into real swap storage
> >> in runtime and the conclusion was that zsmalloc isn't good for
> >> zswap writeback so zswap borrowed zbud allocator from zcache to
> >> replace zsmalloc. The zbud is bad for memory compression ratio(2)
> >> but it's very predictable behavior because we can expect a zpage
> >> includes just two pages as maximum. Other reviews were not major. 
> >> http://lkml.indiana.edu/hypermail/linux/kernel/1304.1/04334.html
> >>
> >> Zcache doesn't use zsmalloc either so zsmalloc's user is only
> >> zram now so this patchset moves it into zsmalloc directory.
> >> Recently, Bob tried to move zsmalloc under mm directory to unify
> >> zram and zswap with adding pseudo block device in zswap(It's
> >> very weired to me) but he was simple ignoring zram's block device
> >> (a.k.a zram-blk) feature and considered only swap usecase of zram,
> >> in turn, it lose zram's good concept.
> >>
> > 
> > Yes, I didn't notice the feature that zram can be used as a normal block
> > device.
> > 
> > 
> >> Mel raised an another issue in v6, "maintainance headache".
> >> He claimed zswap and zram has a similar goal that is to compresss
> >> swap pages so if we promote zram, maintainance headache happens
> >> sometime by diverging implementaion between zswap and zram
> >> so that he want to unify zram and zswap. For it, he want zswap
> >> to implement pseudo block device like Bob did to emulate zram so
> >> zswap can have an advantage of writeback as well as zram's benefit.
> > 
> > If consider zram as a swap device only, I still think it's better to add
> > a pseudo block device to zswap and just disable the writeback of zswap.
> > 
> > But I have no idea of zram's block device feature.
> > 
> 
> BTW: I think the original/main purpose that zram was introduced is for
> swapping. Is there any real users using zram as a normal block device

I don't know but when I read http://lwn.net/Articles/334649/, it aimed
for compressing page caches as well as swap pages but it made widespread
hooks in core (I guess that's why zcache had a birth later by Nitin and Dan)
so reviewers guided him to support anon pages only to merge it.
And at that time, it was a specific virtual block device for only supporting
swap. AFAIRC, akpm suggested to make it general block device so other party
can have a benefit.

You can type "zram tmp" in google and will find many article related
to use zram as tmp and I have been received some questions/reports
from anonymous guys by private mail. And Jorome, Redhat guy, has
contributed that part like partial I/O.

> instead of swap?
> For normal usage, maybe we can extend ramdisk with compression feature.

Maybe, but I don't see any advantage. The ramdisk is really simple
and there is no part to share zram code. Morever, zram have a potential
to extend other features like asynchronous, defragmentation, and
multiple compressor. I don't want to make simple ramdisk bloating and
complicated so every distro could enable it.

Another thing is device name in linux is rather straightforward to
understand like "dd if=/dev/zero of=/dev/null" but if we support
compression feature of ramdisk, "dd if=/dev/ram0 of=/dev/ram1"?
Which is compression ramdisk? How could normal user can identify it?

I think there is no benefit.

> 
> -- 
> Regards,
> -Bob
> 
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org.  For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

-- 
Kind regards,
Minchan Kim

  reply	other threads:[~2013-08-22  1:11 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-21  6:16 [PATCH v7 0/5] zram/zsmalloc promotion Minchan Kim
2013-08-21  6:16 ` Minchan Kim
2013-08-21  6:16 ` [PATCH v6 1/5] zsmalloc: add Kconfig for enabling page table method Minchan Kim
2013-08-21  6:16   ` Minchan Kim
2013-08-21  6:16 ` [PATCH v6 2/5] zsmalloc: add more comment Minchan Kim
2013-08-21  6:16   ` Minchan Kim
2013-08-21  6:16 ` [PATCH v6 3/5] zsmalloc: move it under zram Minchan Kim
2013-08-21  6:16   ` Minchan Kim
2013-08-21  6:16 ` [PATCH v6 4/5] mm: export unmap_kernel_range Minchan Kim
2013-08-21  6:16   ` Minchan Kim
2013-08-21  6:16 ` [PATCH v6 5/5] zram: promote zram from staging Minchan Kim
2013-08-21  6:16   ` Minchan Kim
2013-08-21  9:24 ` [PATCH v7 0/5] zram/zsmalloc promotion Bob Liu
2013-08-21  9:24   ` Bob Liu
2013-08-21 10:26   ` Bob Liu
2013-08-21 10:26     ` Bob Liu
2013-08-22  1:11     ` Minchan Kim [this message]
2013-08-22  1:11       ` Minchan Kim
2013-08-22  0:42   ` Minchan Kim
2013-08-22  0:42     ` Minchan Kim
2013-08-23 14:10     ` Bob Liu
2013-08-23 14:10       ` Bob Liu
2013-08-23 15:13       ` Minchan Kim
2013-08-23 15:13         ` Minchan Kim
2013-08-26  7:39 ` Minchan Kim
2013-08-26  7:39   ` Minchan Kim

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130822011136.GC4665@bbox \
    --to=minchan@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=bob.liu@oracle.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=konrad@darnok.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lliubbo@gmail.com \
    --cc=mgorman@suse.de \
    --cc=ngupta@vflare.org \
    --cc=penberg@cs.helsinki.fi \
    --cc=semenzato@google.com \
    --cc=sjenning@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.