From: Ebru Akagunduz <ebru.akagunduz@gmail.com>
To: "Kirill A. Shutemov" <kirill@shutemov.name>
Cc: linux-mm@kvack.org, akpm@linux-foundation.org,
kirill.shutemov@linux.intel.com, n-horiguchi@ah.jp.nec.com,
aarcange@redhat.com, riel@redhat.com, iamjoonsoo.kim@lge.com,
xiexiuqi@huawei.com, gorcunov@openvz.org,
linux-kernel@vger.kernel.org, mgorman@suse.de,
rientjes@google.com, vbabka@suse.cz,
aneesh.kumar@linux.vnet.ibm.com, hughd@google.com,
hannes@cmpxchg.org, mhocko@suse.cz, boaz@plexistor.com,
raindel@mellanox.com
Subject: [RFC v3 1/3] mm: add tracepoint for scanning pages
Date: Tue, 14 Jul 2015 22:16:07 +0300 [thread overview]
Message-ID: <20150714191607.GA5433@debian> (raw)
In-Reply-To: <20150713210646.GA1427@node.dhcp.inet.fi>
On Tue, Jul 14, 2015 at 12:06:46AM +0300, Kirill A. Shutemov wrote:
> On Mon, Jul 13, 2015 at 11:28:02PM +0300, Ebru Akagunduz wrote:
> > Using static tracepoints, data of functions is recorded.
> > It is good to automatize debugging without doing a lot
> > of changes in the source code.
> >
> > This patch adds tracepoint for khugepaged_scan_pmd,
> > collapse_huge_page and __collapse_huge_page_isolate.
> >
> > Signed-off-by: Ebru Akagunduz <ebru.akagunduz@gmail.com>
> > Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
> > Acked-by: Rik van Riel <riel@redhat.com>
> > ---
> > Changes in v2:
> > - Nothing changed
> >
> > Changes in v3:
> > - Print page address instead of vm_start (Vlastimil Babka)
> > - Define constants to specify exact tracepoint result (Vlastimil Babka)
> >
> >
> > include/linux/mm.h | 18 ++++++
> > include/trace/events/huge_memory.h | 100 ++++++++++++++++++++++++++++++++
> > mm/huge_memory.c | 114 +++++++++++++++++++++++++++----------
> > 3 files changed, 203 insertions(+), 29 deletions(-)
> > create mode 100644 include/trace/events/huge_memory.h
> >
> > diff --git a/include/linux/mm.h b/include/linux/mm.h
> > index 7f47178..bf341c0 100644
> > --- a/include/linux/mm.h
> > +++ b/include/linux/mm.h
> > @@ -21,6 +21,24 @@
> > #include <linux/resource.h>
> > #include <linux/page_ext.h>
> >
> > +#define MM_PMD_NULL 0
> > +#define MM_EXCEED_NONE_PTE 3
> > +#define MM_PTE_NON_PRESENT 4
> > +#define MM_PAGE_NULL 5
> > +#define MM_SCAN_ABORT 6
> > +#define MM_PAGE_COUNT 7
> > +#define MM_PAGE_LRU 8
> > +#define MM_ANY_PROCESS 0
> > +#define MM_VMA_NULL 2
> > +#define MM_VMA_CHECK 3
> > +#define MM_ADDRESS_RANGE 4
> > +#define MM_PAGE_LOCK 2
> > +#define MM_SWAP_CACHE_PAGE 6
> > +#define MM_ISOLATE_LRU_PAGE 7
> > +#define MM_ALLOC_HUGE_PAGE_FAIL 6
> > +#define MM_CGROUP_CHARGE_FAIL 7
> > +#define MM_COLLAPSE_ISOLATE_FAIL 5
> > +
>
> These magic numbers looks very random. What's logic behind?
>
I defined them to specify reason of all success and failure cases
of the functions with tracepoint. Only 1 means success case.
All other values mean failure, I give consecutive numbers as
far as possible, and tried to avoid conflicts of different functions
those can be fail for same reason.
kind regards,
Ebru
next prev parent reply other threads:[~2015-07-14 19:16 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-13 20:28 [RFC v3 0/3] mm: make swapin readahead to gain more thp performance Ebru Akagunduz
2015-07-13 20:28 ` [RFC v3 1/3] mm: add tracepoint for scanning pages Ebru Akagunduz
2015-07-13 21:06 ` Kirill A. Shutemov
2015-07-14 19:16 ` Ebru Akagunduz [this message]
2015-07-28 8:39 ` Vlastimil Babka
2015-07-13 20:28 ` [RFC v3 2/3] mm: make optimistic check for swapin readahead Ebru Akagunduz
2015-07-13 21:07 ` Kirill A. Shutemov
2015-07-14 18:51 ` Ebru Akagunduz
2015-07-13 20:28 ` [RFC v3 3/3] mm: make swapin readahead to improve thp collapse rate Ebru Akagunduz
2015-07-14 9:02 ` Kirill A. Shutemov
2015-07-28 8:59 ` Vlastimil Babka
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=20150714191607.GA5433@debian \
--to=ebru.akagunduz@gmail.com \
--cc=aarcange@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=aneesh.kumar@linux.vnet.ibm.com \
--cc=boaz@plexistor.com \
--cc=gorcunov@openvz.org \
--cc=hannes@cmpxchg.org \
--cc=hughd@google.com \
--cc=iamjoonsoo.kim@lge.com \
--cc=kirill.shutemov@linux.intel.com \
--cc=kirill@shutemov.name \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mgorman@suse.de \
--cc=mhocko@suse.cz \
--cc=n-horiguchi@ah.jp.nec.com \
--cc=raindel@mellanox.com \
--cc=riel@redhat.com \
--cc=rientjes@google.com \
--cc=vbabka@suse.cz \
--cc=xiexiuqi@huawei.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