04 Sep, 2020

1 commit

  • For arm64 MTE support it is necessary to be able to mark pages that
    contain user space visible tags that will need to be saved/restored e.g.
    when swapped out.

    To support this add a new arch specific flag (PG_arch_2). This flag is
    only available on 64-bit architectures due to the limited number of
    spare page flags on the 32-bit ones.

    Signed-off-by: Steven Price
    [catalin.marinas@arm.com: use CONFIG_64BIT for guarding this new flag]
    Signed-off-by: Catalin Marinas
    Cc: Andrew Morton

    Steven Price
     

05 Jun, 2019

1 commit

  • Based on 1 normalized pattern(s):

    this program is free software you can redistribute it and or modify
    it under the terms of the gnu general public license as published by
    the free software foundation version 2 this program is distributed
    in the hope that it will be useful but without any warranty without
    even the implied warranty of merchantability or fitness for a
    particular purpose see the gnu general public license for more
    details you should find a copy of v2 of the gnu general public
    license somewhere on your linux system if not write to the free
    software foundation inc 59 temple place suite 330 boston ma 02111
    1307 usa

    extracted by the scancode license scanner the SPDX license identifier

    GPL-2.0-only

    has been chosen to replace the boilerplate/reference in 1 file(s).

    Signed-off-by: Thomas Gleixner
    Reviewed-by: Allison Randal
    Reviewed-by: Alexios Zavras
    Cc: linux-spdx@vger.kernel.org
    Link: https://lkml.kernel.org/r/20190529141900.073926682@linutronix.de
    Signed-off-by: Greg Kroah-Hartman

    Thomas Gleixner
     

06 Mar, 2019

1 commit

  • PG_balloon was introduced to implement page migration/compaction for
    pages inflated in virtio-balloon. Nowadays, it is only a marker that a
    page is part of virtio-balloon and therefore logically offline.

    We also want to make use of this flag in other balloon drivers - for
    inflated pages or when onlining a section but keeping some pages offline
    (e.g. used right now by XEN and Hyper-V via set_online_page_callback()).

    We are going to expose this flag to dump tools like makedumpfile. But
    instead of exposing PG_balloon, let's generalize the concept of marking
    pages as logically offline, so it can be reused for other purposes later
    on.

    Rename PG_balloon to PG_offline. This is an indicator that the page is
    logically offline, the content stale and that it should not be touched
    (e.g. a hypervisor would have to allocate backing storage in order for
    the guest to dump an unused page). We can then e.g. exclude such pages
    from dumps.

    We replace and reuse KPF_BALLOON (23), as this shouldn't really harm
    (and for now the semantics stay the same). In following patches, we
    will make use of this bit also in other balloon drivers. While at it,
    document PGTABLE.

    [akpm@linux-foundation.org: fix comment text, per David]
    Link: http://lkml.kernel.org/r/20181119101616.8901-3-david@redhat.com
    Signed-off-by: David Hildenbrand
    Acked-by: Konstantin Khlebnikov
    Acked-by: Michael S. Tsirkin
    Acked-by: Pankaj gupta
    Cc: Jonathan Corbet
    Cc: Alexey Dobriyan
    Cc: Mike Rapoport
    Cc: Christian Hansen
    Cc: Vlastimil Babka
    Cc: "Kirill A. Shutemov"
    Cc: Stephen Rothwell
    Cc: Matthew Wilcox
    Cc: Michal Hocko
    Cc: Pavel Tatashin
    Cc: Alexander Duyck
    Cc: Naoya Horiguchi
    Cc: Miles Chen
    Cc: David Rientjes
    Cc: Kazuhito Hagio
    Cc: Arnd Bergmann
    Cc: Baoquan He
    Cc: Borislav Petkov
    Cc: Boris Ostrovsky
    Cc: Dave Young
    Cc: Greg Kroah-Hartman
    Cc: Haiyang Zhang
    Cc: Juergen Gross
    Cc: Julien Freche
    Cc: Kairui Song
    Cc: "K. Y. Srinivasan"
    Cc: Len Brown
    Cc: Lianbo Jiang
    Cc: Michal Hocko
    Cc: Nadav Amit
    Cc: Omar Sandoval
    Cc: Pavel Machek
    Cc: Rafael J. Wysocki
    Cc: "Rafael J. Wysocki"
    Cc: Stefano Stabellini
    Cc: Stephen Hemminger
    Cc: Vitaly Kuznetsov
    Cc: Xavier Deguillard
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Hildenbrand
     

29 Dec, 2018

1 commit

  • Because kpagecount_read() fakes success if map counts are not being
    collected, clamp the page count passed to it by walk_pfn() to the pages
    value returned by the preceding call to kpageflags_read().

    Link: http://lkml.kernel.org/r/1543962269-26116-1-git-send-email-anthony.yznaga@oracle.com
    Fixes: 7f1d23e60718 ("tools/vm/page-types.c: include shared map counts")
    Signed-off-by: Anthony Yznaga
    Reviewed-by: Naoya Horiguchi
    Cc: Vlastimil Babka
    Cc: Matthew Wilcox
    Cc: David Rientjes
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Anthony Yznaga
     

05 Sep, 2018

1 commit


18 Aug, 2018

2 commits

  • Add a flag which causes page-types to use the kernels's idle page
    tracking to mark pages idle. As the tool already prints the idle flag
    if set, subsequent runs will show which pages have been accessed since
    last run.

    [akpm@linux-foundation.org: simplify mark_page_idle()]
    [chansen3@cisco.com: reorganize mark_page_idle() logic, add docs]
    Link: http://lkml.kernel.org/r/20180706172237.21691-1-chansen3@cisco.com
    Link: http://lkml.kernel.org/r/20180612153223.13174-1-chansen3@cisco.com
    Signed-off-by: Christian Hansen
    Reviewed-by: Andrew Morton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christian Hansen
     
  • Add a new flag that will read kpagecount for each PFN and print out the
    number of times the page is mapped along with the flags in the listing
    view.

    This information is useful in understanding and optimizing memory usage.
    Identifying pages which are not shared allows us to focus on adjusting
    the memory layout or access patterns for the sole owning process.
    Knowing the number of processes that share a page tells us how many
    other times we must make the same adjustments or how many processes to
    potentially disable.

    Truncated sample output:

    voffset map-cnt offset len flags
    561a3591e 1 15fe8 1 ___U_lA____Ma_b___________________________
    561a3591f 1 2b103 1 ___U_lA____Ma_b___________________________
    561a36ca4 1 2cc78 1 ___U_lA____Ma_b___________________________
    7f588bb4e 14 2273c 1 __RU_lA____M______________________________

    [akpm@linux-foundation.org: coding-style fixes]
    [chansen3@cisco.com: add documentation, tweak whitespace]
    Link: http://lkml.kernel.org/r/20180705181204.5529-1-chansen3@cisco.com
    Link: http://lkml.kernel.org/r/20180612153205.12879-1-chansen3@cisco.com
    Signed-off-by: Christian Hansen
    Reviewed-by: Andrew Morton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christian Hansen
     

08 Jun, 2018

1 commit

  • Define a new PageTable bit in the page_type and use it to mark pages in
    use as page tables. This can be helpful when debugging crashdumps or
    analysing memory fragmentation. Add a KPF flag to report these pages to
    userspace and update page-types.c to interpret that flag.

    Note that only pages currently accounted as NR_PAGETABLES are tracked as
    PageTable; this does not include pgd/p4d/pud/pmd pages. Those will be the
    subject of a later patch.

    Link: http://lkml.kernel.org/r/20180518194519.3820-4-willy@infradead.org
    Signed-off-by: Matthew Wilcox
    Acked-by: Kirill A. Shutemov
    Acked-by: Vlastimil Babka
    Cc: Christoph Lameter
    Cc: Dave Hansen
    Cc: Jérôme Glisse
    Cc: Lai Jiangshan
    Cc: Martin Schwidefsky
    Cc: Pekka Enberg
    Cc: Randy Dunlap
    Cc: Andrey Ryabinin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matthew Wilcox
     

01 Feb, 2018

1 commit

  • page-types currently hardcodes /proc/kpageflags as the file to parse.
    This works when using the tool to examine the state of pageflags on the
    same system, but does not allow storing a snapshot of pageflags at a
    given time to debug issues nor on a different system.

    This allows the user to specify a saved version of kpageflags with a new
    page-types -F option.

    [akpm@linux-foundation.org: add "filename" to fix usage() string]
    [rientjes@google.com: fix layout]
    Link: http://lkml.kernel.org/r/alpine.DEB.2.10.1801301840050.140969@chino.kir.corp.google.com
    Link: http://lkml.kernel.org/r/alpine.DEB.2.10.1801301458180.153857@chino.kir.corp.google.com
    Signed-off-by: David Rientjes
    Reviewed-by: Andrew Morton
    Reviewed-by: Naoya Horiguchi
    Cc: Konstantin Khlebnikov
    Cc: Vladimir Davydov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Rientjes
     

18 Mar, 2016

3 commits

  • I found that page-types is very slow and my testing shows many timeout
    errors. Here's an example with a simple program allocating 1000 thps.

    $ time ./page-types -p $(pgrep -f test_alloc)
    ...
    real 0m17.201s
    user 0m16.889s
    sys 0m0.312s

    Most of time is spent in memset(). Currently memset() clears over whole
    buffer for every walk_pfn() call, which is inefficient when walk_pfn()
    is called from walk_vma(), because in that case walk_pfn() is called for
    each pfn. So this patch limits the zero initialization only for the
    first element.

    $ time ./page-types.patched -p $(pgrep -f test_alloc)
    ...
    real 0m0.182s
    user 0m0.046s
    sys 0m0.135s

    Fixes: 954e95584579 ("tools/vm/page-types.c: add memory cgroup dumping and filtering")
    Signed-off-by: Naoya Horiguchi
    Suggested-by: Konstantin Khlebnikov
    Cc: Vladimir Davydov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Naoya Horiguchi
     
  • This adds two command line keys:

    -c|--cgroup path|@inode Walk only pages owned by this memory cgroup
    -C|--list-cgroup Show memory cgroup inodes

    [vdavydov@virtuozzo.com: opt_cgroup should be uint64_t. Fix conflicts with "tools/vm/page-types.c: support swap entry"]
    Signed-off-by: Konstantin Khlebnikov
    Cc: Naoya Horiguchi
    Reviewed-by: Vladimir Davydov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     
  • /proc/pid/pagemap (pte_to_pagemap_entry() internally) already reports
    about swap entry, so let's make the in-kernel utility aware of it.

    Signed-off-by: Naoya Horiguchi
    Cc: Vladimir Davydov
    Cc: Konstantin Khlebnikov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Naoya Horiguchi
     

21 Nov, 2015

1 commit


23 Sep, 2015

1 commit

  • There were some changes in how this debugfs mounting helper is
    implemented/exported and we forgot to check if there were other users
    besides perf, fix it.

    Need to do a make -C tools/ everytime we do changes to
    tools/{lib,include} and other places where we're moving things from
    tools/perf/ to be used by other tools/ living code.

    Fixed:

    $ make -C tools/vm
    make: Entering directory '/home/git/linux/tools/vm'
    make -C ../lib/api
    make[1]: Entering directory '/home/git/linux/tools/lib/api'
    CC fd/array.o
    LD fd/libapi-in.o
    CC fs/fs.o
    CC fs/tracing_path.o
    LD fs/libapi-in.o
    CC cpu.o
    LD libapi-in.o
    AR libapi.a
    make[1]: Leaving directory '/home/git/linux/tools/lib/api'
    gcc -Wall -Wextra -I../lib/ -o page-types page-types.c ../lib/api/libapi.a
    make: Leaving directory '/home/git/linux/tools/vm'
    $

    Reported-by: Vinson Lee
    Tested-by: Vinson Lee
    Cc: Steven Rostedt
    Cc: Jiri Olsa
    Cc: Matt Fleming
    Cc: Raphael Beamonte
    Cc: H. Peter Anvin
    Cc: Peter Zijlstra
    Cc: David Ahern
    Cc: Thomas Gleixner
    Cc: Namhyung Kim
    Fixes: 60a1133a5b39 ("tools lib api fs: Remove debugfs, tracefs and findfs objects")
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     

09 Sep, 2015

2 commits

  • This patch sets bit 56 in pagemap if this page is mapped only once. It
    allows to detect exclusively used pages without exposing PFN:

    present file exclusive state
    0 0 0 non-present
    1 1 0 file page mapped somewhere else
    1 1 1 file page mapped only here
    1 0 0 anon non-CoWed page (shared with parent/child)
    1 0 1 anon CoWed page (or never forked)

    CoWed pages in (MAP_FILE | MAP_PRIVATE) areas are anon in this context.

    MMap-exclusive bit doesn't reflect potential page-sharing via swapcache:
    page could be mapped once but has several swap-ptes which point to it.
    Application could detect that by swap bit in pagemap entry and touch that
    pte via /proc/pid/mem to get real information.

    See http://lkml.kernel.org/r/CAEVpBa+_RyACkhODZrRvQLs80iy0sqpdrd0AaP_-tgnX3Y9yNQ@mail.gmail.com

    Requested by Mark Williamson.

    [akpm@linux-foundation.org: fix spello]
    Signed-off-by: Konstantin Khlebnikov
    Reviewed-by: Mark Williamson
    Tested-by: Mark Williamson
    Reviewed-by: Naoya Horiguchi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     
  • This patch removes page-shift bits (scheduled to remove since 3.11) and
    completes migration to the new bit layout. Also it cleans messy macro.

    Signed-off-by: Konstantin Khlebnikov
    Reviewed-by: Naoya Horiguchi
    Cc: Mark Williamson
    Tested-by: Mark Williamson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     

12 Feb, 2015

1 commit

  • Add KPF_ZERO_PAGE flag for zero_page, so that userspace processes can
    detect zero_page in /proc/kpageflags, and then do memory analysis more
    accurately.

    Signed-off-by: Yalin Wang
    Acked-by: Kirill A. Shutemov
    Cc: Konstantin Khlebnikov
    Cc: Naoya Horiguchi
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Wang, Yalin
     

10 Oct, 2014

1 commit

  • Always mark pages with PageBalloon even if balloon compaction is disabled
    and expose this mark in /proc/kpageflags as KPF_BALLOON.

    Also this patch adds three counters into /proc/vmstat: "balloon_inflate",
    "balloon_deflate" and "balloon_migrate". They accumulate balloon
    activity. Current size of balloon is (balloon_inflate - balloon_deflate)
    pages.

    All generic balloon code now gathered under option CONFIG_MEMORY_BALLOON.
    It should be selected by ballooning driver which wants use this feature.
    Currently virtio-balloon is the only user.

    Signed-off-by: Konstantin Khlebnikov
    Cc: Rafael Aquini
    Cc: Andrey Ryabinin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     

05 Jun, 2014

1 commit

  • Recently added page-cache dumping is known to be a little bit racy.
    But after race with truncate it just dies due to unhandled SIGBUS
    when it tries to poke pages beyond the new end of file.
    This patch adds handler for SIGBUS which skips the rest of the file.

    Signed-off-by: Konstantin Khlebnikov
    Cc: Naoya Horiguchi
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     

08 Apr, 2014

1 commit

  • After this patch 'page-types' can walk over a file's mappings and
    analyze populated page cache pages mostly without disturbing its state.

    It maps chunk of file, marks VMA as MADV_RANDOM to turn off readahead,
    pokes VMA via mincore() to determine cached pages, triggers page-fault
    only for them, and finally gathers information via pagemap/kpageflags.
    Before unmap it marks VMA as MADV_SEQUENTIAL for ignoring reference
    bits.

    usage: page-types -f

    If is directory it will analyse all files in all subdirectories.

    Symlinks are not followed as well as mount points. Hardlinks aren't
    handled, they'll be dumped as many times as they are found. Recursive
    walk brings all dentries into dcache and populates page cache of
    block-devices aka 'Buffers'.

    Probably it's worth to add ioctl for dumping file page cache as array of
    PFNs as a replacement for this hackish juggling with
    mmap/madvise/mincore/pagemap. Also recursive walk could be replaced
    with dumping cached inodes via some ioctl or debugfs interface followed
    by openning them via open_by_handle_at, this would fix hardlinks
    handling and unneeded population of dcache and buffers. This interface
    might be used as data source for constructing readahead plans and for
    background optimizations of actively used files.

    collateral changes:
    + fix 64-bit LFS: define _FILE_OFFSET_BITS instead of _LARGEFILE64_SOURCE
    + replace lseek + read with single pread
    + make show_page_range() reusable after flush

    usage example:

    ~/src/linux/tools/vm$ sudo ./page-types -L -f page-types
    foffset offset flags
    page-types Inode: 2229277 Size: 89065 (22 pages)
    Modify: Tue Feb 25 12:00:59 2014 (162 seconds ago)
    Access: Tue Feb 25 12:01:00 2014 (161 seconds ago)
    0 3cbf3b __RU_lA____M________________________
    1 38946a __RU_lA____M________________________
    2 1a3cec __RU_lA____M________________________
    3 1a8321 __RU_lA____M________________________
    4 3af7cc __RU_lA____M________________________
    5 1ed532 __RU_lA_____________________________
    6 2e436a __RU_lA_____________________________
    7 29a35e ___U_lA_____________________________
    8 2de86e ___U_lA_____________________________
    9 3bdfb4 ___U_lA_____________________________
    10 3cd8a3 ___U_lA_____________________________
    11 2afa50 ___U_lA_____________________________
    12 2534c2 ___U_lA_____________________________
    13 1b7a40 ___U_lA_____________________________
    14 17b0be ___U_lA_____________________________
    15 392b0c ___U_lA_____________________________
    16 3ba46a __RU_lA_____________________________
    17 397dc8 ___U_lA_____________________________
    18 1f2a36 ___U_lA_____________________________
    19 21fd30 __RU_lA_____________________________
    20 2c35ba __RU_l______________________________
    21 20f181 __RU_l______________________________

    flags page-count MB symbolic-flags long-symbolic-flags
    0x000000000000002c 2 0 __RU_l______________________________ referenced,uptodate,lru
    0x0000000000000068 11 0 ___U_lA_____________________________ uptodate,lru,active
    0x000000000000006c 4 0 __RU_lA_____________________________ referenced,uptodate,lru,active
    0x000000000000086c 5 0 __RU_lA____M________________________ referenced,uptodate,lru,active,mmap
    total 22 0

    ~/src/linux/tools/vm$ sudo ./page-types -f /
    flags page-count MB symbolic-flags long-symbolic-flags
    0x0000000000000028 21761 85 ___U_l______________________________ uptodate,lru
    0x000000000000002c 127279 497 __RU_l______________________________ referenced,uptodate,lru
    0x0000000000000068 74160 289 ___U_lA_____________________________ uptodate,lru,active
    0x000000000000006c 84469 329 __RU_lA_____________________________ referenced,uptodate,lru,active
    0x000000000000007c 1 0 __RUDlA_____________________________ referenced,uptodate,dirty,lru,active
    0x0000000000000228 370 1 ___U_l___I__________________________ uptodate,lru,reclaim
    0x0000000000000828 49 0 ___U_l_____M________________________ uptodate,lru,mmap
    0x000000000000082c 126 0 __RU_l_____M________________________ referenced,uptodate,lru,mmap
    0x0000000000000868 137 0 ___U_lA____M________________________ uptodate,lru,active,mmap
    0x000000000000086c 12890 50 __RU_lA____M________________________ referenced,uptodate,lru,active,mmap
    total 321242 1254

    Signed-off-by: Konstantin Khlebnikov
    Cc: Arnaldo Carvalho de Melo
    Cc: Fengguang Wu
    Cc: Borislav Petkov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Konstantin Khlebnikov
     

17 Dec, 2013

1 commit

  • Move debugfs.* to api/fs/. We have a common tools/lib/api/ place where
    the Makefile lives and then we place the headers in subdirs.

    For example, all the fs-related stuff goes to tools/lib/api/fs/ from
    which we get libapikfs.a (acme got almost the naming he wanted :-)) and
    we link it into the tools which need it - in this case perf and
    tools/vm/page-types.

    acme:

    "Looking at the implementation, I think some tools can even link
    directly to the .o files, avoiding the .a file altogether.

    But that is just an optimization/finer granularity tools/lib/
    cherrypicking that toolers can make use of."

    Fixup documentation cleaning target while at it.

    Signed-off-by: Borislav Petkov
    Acked-by: Ingo Molnar
    Cc: Adrian Hunter
    Cc: Andi Kleen
    Cc: Arjan van de Ven
    Cc: David Ahern
    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Jiri Olsa
    Cc: Mike Galbraith
    Cc: Namhyung Kim
    Cc: Paul Mackerras
    Cc: Pekka Enberg
    Cc: Peter Zijlstra
    Cc: Robert Richter
    Cc: Stanislav Fomichev
    Cc: Stephane Eranian
    Cc: Steven Rostedt
    Link: http://lkml.kernel.org/r/1386605664-24041-2-git-send-email-bp@alien8.de
    Signed-off-by: Arnaldo Carvalho de Melo

    Borislav Petkov
     

13 Nov, 2013

1 commit

  • Soft dirty bit allows us to track which pages are written since the last
    clear_ref (by "echo 4 > /proc/pid/clear_refs".) This is useful for
    userspace applications to know their memory footprints.

    Note that the kernel exposes this flag via bit[55] of /proc/pid/pagemap,
    and the semantics is not a default one (scheduled to be the default in the
    near future.) However, it shifts to the new semantics at the first
    clear_ref, and the users of soft dirty bit always do it before utilizing
    the bit, so that's not a big deal. Users must avoid relying on the bit in
    page-types before the first clear_ref.

    Signed-off-by: Naoya Horiguchi
    Cc: Wu Fengguang
    Cc: Pavel Emelyanov
    Cc: Cyrill Gorcunov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Naoya Horiguchi
     

16 Mar, 2013

1 commit

  • page-flags.c had some older version of debugfs_mount copied from perf so
    convert it to using the version in the tools library.

    Signed-off-by: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Steven Rostedt
    Cc: Wu Fengguang
    Link: http://lkml.kernel.org/r/1361374353-30385-8-git-send-email-bp@alien8.de
    Signed-off-by: Arnaldo Carvalho de Melo

    Borislav Petkov
     

26 Oct, 2012

1 commit

  • Fix tools/vm/page-types.c to use the UAPI variant of linux/kernel-page-flags.h
    lest the following error appear:

    In file included from page-types.c:38:0:
    ../../include/linux/kernel-page-flags.h:4:42: fatal error:
    uapi/linux/kernel-page-flags.h: No such file or directory

    Reported-by: Daniel Hazelton
    Signed-off-by: David Howells
    Reviewed-by: Fengguang Wu
    Tested-by: Daniel Hazelton
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     

13 Oct, 2012

1 commit


30 May, 2012

2 commits

  • Compiling page-type.c with a recent compiler produces many warnings,
    mostly related to signed/unsigned comparisons. This patch cleans up most
    of them.

    One remaining warning is about an unused parameter. The file
    doesn't define a __unused macro (or the like) yet. This can be addressed
    later.

    Signed-off-by: Ulrich Drepper
    Acked-by: KOSAKI Motohiro
    Acked-by: Fengguang Wu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ulrich Drepper
     
  • Programs using /proc/kpageflags need to know about the various flags. The
    provides them and the comments in the file
    indicate that it is supposed to be used by user-level code. But the file
    is not installed.

    Install the headers and mark the unstable flags as out-of-bounds. The
    page-type tool is also adjusted to not duplicate the definitions

    Signed-off-by: Ulrich Drepper
    Acked-by: KOSAKI Motohiro
    Acked-by: Fengguang Wu
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ulrich Drepper
     

29 Mar, 2012

1 commit

  • tools/ is the better place for vm tools which are used by many people.
    Moving them to tools also make them open to more users instead of hide in
    Documentation folder.

    This patch moves page-types.c to tools/vm/page-types.c. Also add a
    Makefile in tools/vm and fix two coding style problems: a) change const
    arrary to 'const char * const', b) change a space to tab for indent.

    Signed-off-by: Dave Young
    Acked-by: Wu Fengguang
    Cc: Christoph Lameter
    Cc: Pekka Enberg
    Cc: Frederic Weisbecker
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Young