All of lore.kernel.org
 help / color / mirror / Atom feed
From: Seth Jennings <sjenning@linux.vnet.ibm.com>
To: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: Ric Mason <ric.masonn@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Nitin Gupta <ngupta@vflare.org>, Minchan Kim <minchan@kernel.org>,
	Konrad Wilk <konrad.wilk@oracle.com>,
	Robert Jennings <rcj@linux.vnet.ibm.com>,
	Jenifer Hopper <jhopper@us.ibm.com>, Mel Gorman <mgorman@suse.de>,
	Johannes Weiner <jweiner@redhat.com>,
	Rik van Riel <riel@redhat.com>,
	Larry Woodman <lwoodman@redhat.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Dave Hansen <dave@linux.vnet.ibm.com>,
	Joe Perches <joe@perches.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	devel@driverdev.osuosl.org
Subject: Re: [PATCHv5 4/8] zswap: add to mm/
Date: Mon, 18 Feb 2013 16:52:16 -0600	[thread overview]
Message-ID: <5122B0A0.3090401@linux.vnet.ibm.com> (raw)
In-Reply-To: <2c81050d-72b0-4a93-aecb-900171a019d0@default>

On 02/18/2013 03:59 PM, Dan Magenheimer wrote:
>> From: Seth Jennings [mailto:sjenning@linux.vnet.ibm.com]
>> Subject: Re: [PATCHv5 4/8] zswap: add to mm/
>>
>> On 02/18/2013 01:55 PM, Dan Magenheimer wrote:
>>>> From: Seth Jennings [mailto:sjenning@linux.vnet.ibm.com]
>>>> Subject: Re: [PATCHv5 4/8] zswap: add to mm/
>>>>
>>>> On 02/15/2013 10:04 PM, Ric Mason wrote:
>>>>>> + * certain event is occurring.
>>>>>> +*/
>>>>>> +static u64 zswap_pool_limit_hit;
>>>>>> +static u64 zswap_reject_compress_poor;
>>>>>> +static u64 zswap_reject_zsmalloc_fail;
>>>>>> +static u64 zswap_reject_kmemcache_fail;
>>>>>> +static u64 zswap_duplicate_entry;
>>>>>> +
>>>>>> +/*********************************
>>>>>> +* tunables
>>>>>> +**********************************/
>>>>>> +/* Enable/disable zswap (disabled by default, fixed at boot for
>>>>>> now) */
>>>>>> +static bool zswap_enabled;
>>>>>> +module_param_named(enabled, zswap_enabled, bool, 0);
>>>>>
>>>>> please document in Documentation/kernel-parameters.txt.
>>>>
>>>> Will do.
>>>
>>> Is that a good idea?  Konrad's frontswap/cleancache patches
>>> to fix frontswap/cleancache initialization so that backends
>>> can be built/loaded as modules may be merged for 3.9.
>>> AFAIK, module parameters are not included in kernel-parameters.txt.
>>
>> This is true.  However, the frontswap/cleancache init stuff isn't the
>> only reason zswap is built-in only.  The writeback code depends on
>> non-exported kernel symbols:
>>
>> swapcache_free
>> __swap_writepage
>> __add_to_swap_cache
>> swapcache_prepare
>> swapper_space
>> end_swap_bio_write
>>
>> I know a fix is as trivial as exporting them, but I didn't want to
>> take on that debate right now.
> 
> Hmmm... I wonder if exporting these might be the best solution
> as it (unnecessarily?) exposes some swap subsystem internals.
> I wonder if a small change to read_swap_cache_async might
> be more acceptable.

Yes, I'm not saying that I'm for exporting them; just that that would
be an easy and probably improper fix.

As I recall, the only thing I really needed to change in my adaption
of read_swap_cache_async(), zswap_get_swap_cache_page() in zswap, was
the assumption built in that it is swapping in a page on behalf of a
userspace program with the vma argument and alloc_page_vma().  Maybe
if we change it to just use alloc_page when vma is NULL, that could
work.  In a non-NUMA kernel alloc_page_vma() equals alloc_page() so I
wouldn't expect weird things doing that.

Seth

--
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: Seth Jennings <sjenning@linux.vnet.ibm.com>
To: Dan Magenheimer <dan.magenheimer@oracle.com>
Cc: Ric Mason <ric.masonn@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Nitin Gupta <ngupta@vflare.org>, Minchan Kim <minchan@kernel.org>,
	Konrad Wilk <konrad.wilk@oracle.com>,
	Robert Jennings <rcj@linux.vnet.ibm.com>,
	Jenifer Hopper <jhopper@us.ibm.com>, Mel Gorman <mgorman@suse.de>,
	Johannes Weiner <jweiner@redhat.com>,
	Rik van Riel <riel@redhat.com>,
	Larry Woodman <lwoodman@redhat.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Dave Hansen <dave@linux.vnet.ibm.com>,
	Joe Perches <joe@perches.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	devel@driverdev.osuosl.org
Subject: Re: [PATCHv5 4/8] zswap: add to mm/
Date: Mon, 18 Feb 2013 16:52:16 -0600	[thread overview]
Message-ID: <5122B0A0.3090401@linux.vnet.ibm.com> (raw)
In-Reply-To: <2c81050d-72b0-4a93-aecb-900171a019d0@default>

On 02/18/2013 03:59 PM, Dan Magenheimer wrote:
>> From: Seth Jennings [mailto:sjenning@linux.vnet.ibm.com]
>> Subject: Re: [PATCHv5 4/8] zswap: add to mm/
>>
>> On 02/18/2013 01:55 PM, Dan Magenheimer wrote:
>>>> From: Seth Jennings [mailto:sjenning@linux.vnet.ibm.com]
>>>> Subject: Re: [PATCHv5 4/8] zswap: add to mm/
>>>>
>>>> On 02/15/2013 10:04 PM, Ric Mason wrote:
>>>>>> + * certain event is occurring.
>>>>>> +*/
>>>>>> +static u64 zswap_pool_limit_hit;
>>>>>> +static u64 zswap_reject_compress_poor;
>>>>>> +static u64 zswap_reject_zsmalloc_fail;
>>>>>> +static u64 zswap_reject_kmemcache_fail;
>>>>>> +static u64 zswap_duplicate_entry;
>>>>>> +
>>>>>> +/*********************************
>>>>>> +* tunables
>>>>>> +**********************************/
>>>>>> +/* Enable/disable zswap (disabled by default, fixed at boot for
>>>>>> now) */
>>>>>> +static bool zswap_enabled;
>>>>>> +module_param_named(enabled, zswap_enabled, bool, 0);
>>>>>
>>>>> please document in Documentation/kernel-parameters.txt.
>>>>
>>>> Will do.
>>>
>>> Is that a good idea?  Konrad's frontswap/cleancache patches
>>> to fix frontswap/cleancache initialization so that backends
>>> can be built/loaded as modules may be merged for 3.9.
>>> AFAIK, module parameters are not included in kernel-parameters.txt.
>>
>> This is true.  However, the frontswap/cleancache init stuff isn't the
>> only reason zswap is built-in only.  The writeback code depends on
>> non-exported kernel symbols:
>>
>> swapcache_free
>> __swap_writepage
>> __add_to_swap_cache
>> swapcache_prepare
>> swapper_space
>> end_swap_bio_write
>>
>> I know a fix is as trivial as exporting them, but I didn't want to
>> take on that debate right now.
> 
> Hmmm... I wonder if exporting these might be the best solution
> as it (unnecessarily?) exposes some swap subsystem internals.
> I wonder if a small change to read_swap_cache_async might
> be more acceptable.

Yes, I'm not saying that I'm for exporting them; just that that would
be an easy and probably improper fix.

As I recall, the only thing I really needed to change in my adaption
of read_swap_cache_async(), zswap_get_swap_cache_page() in zswap, was
the assumption built in that it is swapping in a page on behalf of a
userspace program with the vma argument and alloc_page_vma().  Maybe
if we change it to just use alloc_page when vma is NULL, that could
work.  In a non-NUMA kernel alloc_page_vma() equals alloc_page() so I
wouldn't expect weird things doing that.

Seth


  reply	other threads:[~2013-02-18 22:52 UTC|newest]

Thread overview: 87+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-02-13 18:38 [PATCHv5 0/8] zswap: compressed swap caching Seth Jennings
2013-02-13 18:38 ` [PATCHv5 1/8] zsmalloc: add to mm/ Seth Jennings
2013-02-16  3:26   ` Ric Mason
2013-02-16  3:26     ` Ric Mason
2013-02-18 19:04     ` Seth Jennings
2013-02-18 19:04       ` Seth Jennings
2013-02-19  9:18   ` Joonsoo Kim
2013-02-19  9:18     ` Joonsoo Kim
2013-02-19 17:54     ` Seth Jennings
2013-02-19 17:54       ` Seth Jennings
2013-02-19 23:37       ` Minchan Kim
2013-02-19 23:37         ` Minchan Kim
2013-02-22  9:24         ` Joonsoo Kim
2013-02-22  9:24           ` Joonsoo Kim
2013-02-22 20:04           ` Seth Jennings
2013-02-22 20:04             ` Seth Jennings
2013-02-25 17:05             ` Dan Magenheimer
2013-02-25 17:05               ` Dan Magenheimer
2013-02-25 19:14               ` Seth Jennings
2013-02-25 19:14                 ` Seth Jennings
2013-02-26  0:20                 ` Dan Magenheimer
2013-02-26  0:20                   ` Dan Magenheimer
2013-02-20  1:58       ` Nitin Gupta
2013-02-20  2:42       ` Nitin Gupta
2013-02-20  2:42         ` Nitin Gupta
2013-02-13 18:38 ` [PATCHv5 2/8] zsmalloc: add documentation Seth Jennings
2013-02-16  6:21   ` Ric Mason
2013-02-16  6:21     ` Ric Mason
2013-02-18 19:16     ` Seth Jennings
2013-02-18 19:16       ` Seth Jennings
2013-02-21  8:44       ` Ric Mason
2013-02-21  8:49       ` Ric Mason
2013-02-21  8:49         ` Ric Mason
2013-02-21 15:50         ` Seth Jennings
2013-02-21 15:50           ` Seth Jennings
2013-02-21 16:20           ` Dan Magenheimer
2013-02-21 16:20             ` Dan Magenheimer
2013-02-22  2:56           ` Ric Mason
2013-02-22  2:56             ` Ric Mason
2013-02-22 21:02             ` Seth Jennings
2013-02-22 21:02               ` Seth Jennings
2013-02-24  0:37               ` Ric Mason
2013-02-24  0:37                 ` Ric Mason
2013-02-25 15:18                 ` Seth Jennings
2013-02-25 15:18                   ` Seth Jennings
2013-03-01  6:47                   ` Ric Mason
2013-03-01  6:47                     ` Ric Mason
2013-02-22  2:59           ` Ric Mason
2013-02-22  2:59             ` Ric Mason
2013-02-13 18:38 ` [PATCHv5 3/8] debugfs: add get/set for atomic types Seth Jennings
2013-02-13 18:38 ` [PATCHv5 4/8] zswap: add to mm/ Seth Jennings
2013-02-16  4:04   ` Ric Mason
2013-02-16  4:04     ` Ric Mason
2013-02-18 19:24     ` Seth Jennings
2013-02-18 19:24       ` Seth Jennings
2013-02-18 19:49       ` Cody P Schafer
2013-02-18 19:49         ` Cody P Schafer
2013-02-18 20:07         ` Seth Jennings
2013-02-18 20:07           ` Seth Jennings
2013-02-18 19:55       ` Dan Magenheimer
2013-02-18 19:55         ` Dan Magenheimer
2013-02-18 20:39         ` Seth Jennings
2013-02-18 20:39           ` Seth Jennings
2013-02-18 21:59           ` Dan Magenheimer
2013-02-18 21:59             ` Dan Magenheimer
2013-02-18 22:52             ` Seth Jennings [this message]
2013-02-18 22:52               ` Seth Jennings
2013-02-18 23:17               ` Dan Magenheimer
2013-02-18 23:17                 ` Dan Magenheimer
2013-02-20 20:37         ` Seth Jennings
2013-02-20 20:37           ` Seth Jennings
2013-02-13 18:38 ` [PATCHv5 5/8] mm: break up swap_writepage() for frontswap backends Seth Jennings
2013-02-13 18:38 ` [PATCHv5 6/8] mm: allow for outstanding swap writeback accounting Seth Jennings
2013-02-13 18:38 ` [PATCHv5 7/8] zswap: add swap page writeback support Seth Jennings
2013-02-16  6:11   ` Ric Mason
2013-02-16  6:11     ` Ric Mason
2013-02-18 19:32     ` Seth Jennings
2013-02-18 19:32       ` Seth Jennings
2013-02-25  2:54   ` Minchan Kim
2013-02-25  2:54     ` Minchan Kim
2013-02-25 17:37     ` Seth Jennings
2013-02-25 17:37       ` Seth Jennings
2013-02-13 18:38 ` [PATCHv5 8/8] zswap: add documentation Seth Jennings
2013-02-16  3:20 ` [PATCHv5 0/8] zswap: compressed swap caching Ric Mason
2013-02-16  3:20   ` Ric Mason
2013-02-18 19:37   ` Seth Jennings
2013-02-18 19:37     ` Seth Jennings

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=5122B0A0.3090401@linux.vnet.ibm.com \
    --to=sjenning@linux.vnet.ibm.com \
    --cc=akpm@linux-foundation.org \
    --cc=benh@kernel.crashing.org \
    --cc=dan.magenheimer@oracle.com \
    --cc=dave@linux.vnet.ibm.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jhopper@us.ibm.com \
    --cc=joe@perches.com \
    --cc=jweiner@redhat.com \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lwoodman@redhat.com \
    --cc=mgorman@suse.de \
    --cc=minchan@kernel.org \
    --cc=ngupta@vflare.org \
    --cc=rcj@linux.vnet.ibm.com \
    --cc=ric.masonn@gmail.com \
    --cc=riel@redhat.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.