linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Cong Wang <amwang@redhat.com>
To: Andrea Arcangeli <aarcange@redhat.com>
Cc: Vivek Goyal <vgoyal@redhat.com>, Rik van Riel <riel@redhat.com>,
	Mel Gorman <mgorman@suse.de>,
	linux-kernel@vger.kernel.org, akpm@linux-foundation.org,
	Johannes Weiner <jweiner@redhat.com>,
	KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>,
	linux-mm@kvack.org
Subject: Re: [PATCH 1/3] mm: completely disable THP by transparent_hugepage=never
Date: Tue, 21 Jun 2011 12:08:14 +0800	[thread overview]
Message-ID: <4E00192E.70901@redhat.com> (raw)
In-Reply-To: <20110620192117.GG20843@redhat.com>

ao? 2011a1'06ae??21ae?JPY 03:21, Andrea Arcangeli a??e??:
> On Mon, Jun 20, 2011 at 02:25:58PM -0400, Vivek Goyal wrote:
>> So I see some opprotunity there to save memory. But this 10kB
>> definitely sounds trivial amount to me.
>
> Agree with you and Rik. Also I already avoided the big memory waste
> (that for example isn't avoided in the ksmd and could be optimized
> away without decreasing flexibility of KSM, and ksmd surely runs on
> the kdump kernel too...) that is to make khugepaged exit and release
> kernel stack when enabled=never (either done by sysfs or at boot with
> transparent_hugepage=never) and all other structs associated with a
> (temporarily) useless kernel thread.

I agree to disable ksm in kdump kernel, thanks for pointing this out!
I will look into later, and probably send a patch for this too.

>
> The khugepaged_slab_init and mm_slot_hash_init() maybe could be
> deferred to when khugepaged starts, and be released when it shutdown
> but it makes it more tricky/racey. If you really want to optimize
> that, without preventing to ever enable THP again despite all .text
> was compiled in and ready to run. You will likely save more if you
> make ksmd exit when run=0 (which btw is a much more common config than
> enabled=never with THP). And slots hashes are allocated by ksm too so
> you could optimize those too if you want and allocate them only by the
> time ksmd starts.

The thing is that we can save ~10K by adding 3 lines of code as this
patch showed, where else in kernel can you save 10K by 3 lines of code?
(except some kfree() cases, of course) So, again, why not have it? ;)

>
> As long as it'd still possible to enable the feature again as it is
> possible now without noticing an altered behavior from userland, I'm
> not entirely against optimizing for saving ~8k of ram even if it
> increases complexity a bit (more kernel code will increase .text a bit
> though, hopefully not 8k more of .text ;).

Why do we _force_ the feature to be tunable even when user completely
don't want to disable it? Why not provide a way to let the user to decide
which is better for him?

When programming kernel, providing a mechanism rather than a policy is
what I always keep in mind, I don't know why you violate this rule here,
to be honest. :-/

Thanks.

--
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/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2011-06-21  4:08 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-20 16:34 Amerigo Wang
2011-06-20 16:34 ` [PATCH 2/3] mm: make the threshold of enabling THP configurable Amerigo Wang
2011-06-20 16:59   ` Dave Hansen
2011-06-20 17:23     ` Cong Wang
2011-06-20 16:59   ` Mel Gorman
2011-06-20 17:16     ` Cong Wang
2011-06-21  9:36       ` Mel Gorman
2011-06-22  2:41         ` Cong Wang
2011-06-22  9:16           ` Mel Gorman
2011-06-22 10:46             ` Cong Wang
2011-06-22 11:15               ` Mel Gorman
2011-06-22 12:34                 ` Cong Wang
2011-06-20 16:34 ` [PATCH 3/3] mm: print information when THP is disabled automatically Amerigo Wang
2011-06-20 16:54   ` Andrea Arcangeli
2011-06-20 17:25     ` Cong Wang
2011-06-20 17:01   ` Mel Gorman
2011-06-20 17:26     ` Cong Wang
2011-06-20 19:37       ` Andrea Arcangeli
2011-06-21  9:40       ` Mel Gorman
2011-06-20 16:50 ` [PATCH 1/3] mm: completely disable THP by transparent_hugepage=never Andrea Arcangeli
2011-06-20 16:55   ` Rik van Riel
2011-06-20 17:01   ` Cong Wang
2011-06-20 19:43     ` Andrea Arcangeli
2011-06-21  3:15       ` Cong Wang
2011-06-20 16:58 ` Mel Gorman
2011-06-20 17:07   ` Cong Wang
2011-06-20 17:10     ` Rik van Riel
2011-06-20 17:19       ` Cong Wang
2011-06-20 17:28         ` Rik van Riel
2011-06-20 17:34           ` Cong Wang
2011-06-20 17:50             ` Rik van Riel
2011-06-20 18:25               ` Vivek Goyal
2011-06-20 19:21                 ` Andrea Arcangeli
2011-06-21  4:08                   ` Cong Wang [this message]
2011-06-21 14:43                     ` Andrea Arcangeli
2011-06-22  2:56                       ` Cong Wang
2011-06-22 14:22                         ` Andrea Arcangeli
2011-06-21 20:01                     ` Rik van Riel
2011-06-21  3:28               ` Cong Wang
2011-06-20 17:58             ` Eric B Munson
2011-06-21  3:36               ` Cong Wang
2011-06-20 17:59           ` Vivek Goyal

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=4E00192E.70901@redhat.com \
    --to=amwang@redhat.com \
    --cc=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=jweiner@redhat.com \
    --cc=kamezawa.hiroyu@jp.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mgorman@suse.de \
    --cc=riel@redhat.com \
    --cc=vgoyal@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox