From: Han Pingtian <hanpt@linux.vnet.ibm.com>
To: Mel Gorman <mgorman@suse.de>
Cc: linux-kernel@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
Michal Hocko <mhocko@suse.cz>,
linux-mm@kvack.org, Dave Hansen <dave.hansen@intel.com>,
David Rientjes <rientjes@google.com>
Subject: Re: [RFC] restore user defined min_free_kbytes when disabling thp
Date: Wed, 22 Jan 2014 14:05:06 +0800 [thread overview]
Message-ID: <20140122060506.GA2657@localhost.localdomain> (raw)
In-Reply-To: <20140121102351.GD4963@suse.de>
On Tue, Jan 21, 2014 at 10:23:51AM +0000, Mel Gorman wrote:
> On Tue, Jan 21, 2014 at 05:38:59PM +0800, Han Pingtian wrote:
> > The testcase 'thp04' of LTP will enable THP, do some testing, then
> > disable it if it wasn't enabled. But this will leave a different value
> > of min_free_kbytes if it has been set by admin. So I think it's better
> > to restore the user defined value after disabling THP.
> >
>
> Then have LTP record what min_free_kbytes was at the same time THP was
> enabled by the test and restore both settings. It leaves a window where
> an admin can set an alternative value during the test but that would also
> invalidate the test in same cases and gets filed under "don't do that".
>
Because the value is changed in kernel, so it would be better to
restore it in kernel, right? :) I have a v2 patch which will restore
the value only if it isn't set again by user after THP's initialization.
This v2 patch is dependent on the patch 'mm: show message when updating
min_free_kbytes in thp' which has been added to -mm tree, can be found
here:
http://ozlabs.org/~akpm/mmotm/broken-out/mm-show-message-when-updating-min_free_kbytes-in-thp.patch
please have a look. Thanks.
WARNING: multiple messages have this Message-ID (diff)
From: Han Pingtian <hanpt@linux.vnet.ibm.com>
To: Mel Gorman <mgorman@suse.de>
Cc: linux-kernel@vger.kernel.org,
Andrew Morton <akpm@linux-foundation.org>,
Michal Hocko <mhocko@suse.cz>,
linux-mm@kvack.org, Dave Hansen <dave.hansen@intel.com>,
David Rientjes <rientjes@google.com>
Subject: Re: [RFC] restore user defined min_free_kbytes when disabling thp
Date: Wed, 22 Jan 2014 14:05:06 +0800 [thread overview]
Message-ID: <20140122060506.GA2657@localhost.localdomain> (raw)
In-Reply-To: <20140121102351.GD4963@suse.de>
On Tue, Jan 21, 2014 at 10:23:51AM +0000, Mel Gorman wrote:
> On Tue, Jan 21, 2014 at 05:38:59PM +0800, Han Pingtian wrote:
> > The testcase 'thp04' of LTP will enable THP, do some testing, then
> > disable it if it wasn't enabled. But this will leave a different value
> > of min_free_kbytes if it has been set by admin. So I think it's better
> > to restore the user defined value after disabling THP.
> >
>
> Then have LTP record what min_free_kbytes was at the same time THP was
> enabled by the test and restore both settings. It leaves a window where
> an admin can set an alternative value during the test but that would also
> invalidate the test in same cases and gets filed under "don't do that".
>
Because the value is changed in kernel, so it would be better to
restore it in kernel, right? :) I have a v2 patch which will restore
the value only if it isn't set again by user after THP's initialization.
This v2 patch is dependent on the patch 'mm: show message when updating
min_free_kbytes in thp' which has been added to -mm tree, can be found
here:
http://ozlabs.org/~akpm/mmotm/broken-out/mm-show-message-when-updating-min_free_kbytes-in-thp.patch
please have a look. Thanks.
>From 8b79586ff9a1d85cbe45102a86888268094ec0ae Mon Sep 17 00:00:00 2001
From: Han Pingtian <hanpt@linux.vnet.ibm.com>
Date: Tue, 21 Jan 2014 17:24:43 +0800
Subject: [PATCH] mm: restore user defined min_free_kbytes when disabling thp
thp increases the value of min_free_kbytes in initialization. This will
change the user defined value of min_free_kbytes sometimes. So try to
restore the value when disabling thp if the value has been changed in
thp initialization and isn't changed by user afte that.
Signed-off-by: Han Pingtian <hanpt@linux.vnet.ibm.com>
---
mm/huge_memory.c | 10 ++++++++++
1 files changed, 10 insertions(+), 0 deletions(-)
diff --git a/mm/huge_memory.c b/mm/huge_memory.c
index 94a824f..fcb8ce58 100644
--- a/mm/huge_memory.c
+++ b/mm/huge_memory.c
@@ -164,6 +164,16 @@ static int start_khugepaged(void)
} else if (khugepaged_thread) {
kthread_stop(khugepaged_thread);
khugepaged_thread = NULL;
+
+ if (user_min_free_kbytes >= 0 &&
+ user_min_free_kbytes != min_free_kbytes) {
+ pr_info("restore min_free_kbytes from %d to user "
+ "defined %d when stopping khugepaged\n",
+ min_free_kbytes, user_min_free_kbytes);
+
+ min_free_kbytes = user_min_free_kbytes;
+ setup_per_zone_wmarks();
+ }
}
return err;
--
1.7.7.6
next prev parent reply other threads:[~2014-01-22 6:05 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-21 9:38 [RFC] restore user defined min_free_kbytes when disabling thp Han Pingtian
2014-01-21 9:38 ` Han Pingtian
2014-01-21 10:23 ` Mel Gorman
2014-01-21 10:23 ` Mel Gorman
2014-01-22 6:05 ` Han Pingtian [this message]
2014-01-22 6:05 ` Han Pingtian
2014-01-22 9:40 ` Mel Gorman
2014-01-22 9:40 ` Mel Gorman
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=20140122060506.GA2657@localhost.localdomain \
--to=hanpt@linux.vnet.ibm.com \
--cc=akpm@linux-foundation.org \
--cc=dave.hansen@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=mhocko@suse.cz \
--cc=rientjes@google.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.