From: Tejun Heo <tj@kernel.org>
To: Saravanan D <saravanand@fb.com>
Cc: x86@kernel.org, dave.hansen@linux.intel.com, luto@kernel.org,
peterz@infradead.org, linux-kernel@vger.kernel.org,
kernel-team@fb.com
Subject: Re: [PATCH V2] x86/mm: Tracking linear mapping split events
Date: Wed, 27 Jan 2021 16:03:05 -0500 [thread overview]
Message-ID: <YBHVCZscdVsxbFUk@slm.duckdns.org> (raw)
In-Reply-To: <20210127175124.3289879-1-saravanand@fb.com>
Hello,
On Wed, Jan 27, 2021 at 09:51:24AM -0800, Saravanan D wrote:
> Numerous hugepage splits in the linear mapping would give
> admins the signal to narrow down the sluggishness caused by TLB
> miss/reload.
>
> To help with debugging, we introduce monotonic lifetime hugepage
> split event counts since SYSTEM_RUNNING to be displayed as part of
> /proc/vmstat in x86 servers
>
> The lifetime split event information will be displayed at the bottom of
> /proc/vmstat
> ....
> swap_ra 0
> swap_ra_hit 0
> direct_map_2M_splits 139
> direct_map_4M_splits 0
> direct_map_1G_splits 7
> nr_unstable 0
> ....
This looks great to me.
>
> Ancillary debugfs split event counts exported to userspace via read-write
> endpoints : /sys/kernel/debug/x86/direct_map_[2M|4M|1G]_split
>
> dmesg log when user resets the debugfs split event count for
> debugging
> ....
> [ 232.470531] debugfs 2M Pages split event count(128) reset to 0
> ....
I'm not convinced this part is necessary or even beneficial.
> One of the many lasting (as we don't coalesce back) sources for huge page
> splits is tracing as the granular page attribute/permission changes would
> force the kernel to split code segments mapped to huge pages to smaller
> ones thereby increasing the probability of TLB miss/reload even after
> tracing has been stopped.
>
> Signed-off-by: Saravanan D <saravanand@fb.com>
> ---
> arch/x86/mm/pat/set_memory.c | 117 ++++++++++++++++++++++++++++++++++
> include/linux/vm_event_item.h | 8 +++
> mm/vmstat.c | 8 +++
> 3 files changed, 133 insertions(+)
So, now the majority of the added code is to add debugfs knobs which don't
provide anything that userland can't already do by simply reading the
monotonic counters.
Dave, are you still set on the resettable counters?
Thanks.
--
tejun
next prev parent reply other threads:[~2021-01-27 21:04 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <BYAPR01MB40856478D5BE74CB6A7D5578CFBD9@BYAPR01MB4085.prod.exchangelabs.com>
2021-01-25 20:15 ` [PATCH] x86/mm: Tracking linear mapping split events since boot Dave Hansen
2021-01-25 20:32 ` Tejun Heo
2021-01-26 0:47 ` Dave Hansen
2021-01-26 0:53 ` Tejun Heo
2021-01-26 1:04 ` Dave Hansen
2021-01-26 1:17 ` Tejun Heo
2021-01-27 17:51 ` [PATCH V2] x86/mm: Tracking linear mapping split events Saravanan D
2021-01-27 21:03 ` Tejun Heo [this message]
2021-01-27 21:32 ` Dave Hansen
2021-01-27 21:36 ` Tejun Heo
2021-01-27 21:42 ` Saravanan D
2021-01-27 22:50 ` [PATCH V3] " Saravanan D
2021-01-27 23:00 ` Randy Dunlap
2021-01-27 23:56 ` Saravanan D
2021-01-27 23:41 ` Dave Hansen
2021-01-28 0:15 ` Saravanan D
2021-01-28 4:35 ` [PATCH V4] " Saravanan D
2021-01-28 4:51 ` Matthew Wilcox
[not found] ` <20210128104934.2916679-1-saravanand@fb.com>
2021-01-28 15:04 ` [PATCH V5] " Matthew Wilcox
2021-01-28 19:49 ` Saravanan D
2021-01-28 16:33 ` Zi Yan
2021-01-28 16:41 ` Dave Hansen
2021-01-28 16:56 ` Zi Yan
2021-01-28 16:59 ` Song Liu
[not found] ` <3aec2d10-f4c3-d07a-356f-6f1001679181@intel.com>
2021-01-28 21:20 ` Saravanan D
[not found] ` <20210128233430.1460964-1-saravanand@fb.com>
2021-01-28 23:41 ` [PATCH V6] " Tejun Heo
2021-01-29 19:27 ` Johannes Weiner
2021-02-08 23:17 ` Saravanan D
2021-02-08 23:30 ` Dave Hansen
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=YBHVCZscdVsxbFUk@slm.duckdns.org \
--to=tj@kernel.org \
--cc=dave.hansen@linux.intel.com \
--cc=kernel-team@fb.com \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@kernel.org \
--cc=peterz@infradead.org \
--cc=saravanand@fb.com \
--cc=x86@kernel.org \
/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