diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2016-07-26 22:55:54 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-07-26 22:55:54 -0400 |
commit | 0e06f5c0deeef0332a5da2ecb8f1fcf3e024d958 (patch) | |
tree | e0f0af4aadf10c713c5cf1b65356844b3c9b3215 /tools | |
parent | f7816ad0f878dacd5f0120476f9b836ccf8699ea (diff) | |
parent | 8f19b0c058d93a678a99dd6fec03af2e769943f2 (diff) |
Merge branch 'akpm' (patches from Andrew)
Merge updates from Andrew Morton:
- a few misc bits
- ocfs2
- most(?) of MM
* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (125 commits)
thp: fix comments of __pmd_trans_huge_lock()
cgroup: remove unnecessary 0 check from css_from_id()
cgroup: fix idr leak for the first cgroup root
mm: memcontrol: fix documentation for compound parameter
mm: memcontrol: remove BUG_ON in uncharge_list
mm: fix build warnings in <linux/compaction.h>
mm, thp: convert from optimistic swapin collapsing to conservative
mm, thp: fix comment inconsistency for swapin readahead functions
thp: update Documentation/{vm/transhuge,filesystems/proc}.txt
shmem: split huge pages beyond i_size under memory pressure
thp: introduce CONFIG_TRANSPARENT_HUGE_PAGECACHE
khugepaged: add support of collapse for tmpfs/shmem pages
shmem: make shmem_inode_info::lock irq-safe
khugepaged: move up_read(mmap_sem) out of khugepaged_alloc_page()
thp: extract khugepaged from mm/huge_memory.c
shmem, thp: respect MADV_{NO,}HUGEPAGE for file mappings
shmem: add huge pages support
shmem: get_unmapped_area align huge page
shmem: prepare huge= mount option and sysfs knob
mm, rmap: account shmem thp pages
...
Diffstat (limited to 'tools')
-rw-r--r-- | tools/vm/page_owner_sort.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/tools/vm/page_owner_sort.c b/tools/vm/page_owner_sort.c index 77147b42d598..f1c055f3c243 100644 --- a/tools/vm/page_owner_sort.c +++ b/tools/vm/page_owner_sort.c | |||
@@ -79,12 +79,12 @@ static void add_list(char *buf, int len) | |||
79 | } | 79 | } |
80 | } | 80 | } |
81 | 81 | ||
82 | #define BUF_SIZE 1024 | 82 | #define BUF_SIZE (128 * 1024) |
83 | 83 | ||
84 | int main(int argc, char **argv) | 84 | int main(int argc, char **argv) |
85 | { | 85 | { |
86 | FILE *fin, *fout; | 86 | FILE *fin, *fout; |
87 | char buf[BUF_SIZE]; | 87 | char *buf; |
88 | int ret, i, count; | 88 | int ret, i, count; |
89 | struct block_list *list2; | 89 | struct block_list *list2; |
90 | struct stat st; | 90 | struct stat st; |
@@ -107,6 +107,11 @@ int main(int argc, char **argv) | |||
107 | max_size = st.st_size / 100; /* hack ... */ | 107 | max_size = st.st_size / 100; /* hack ... */ |
108 | 108 | ||
109 | list = malloc(max_size * sizeof(*list)); | 109 | list = malloc(max_size * sizeof(*list)); |
110 | buf = malloc(BUF_SIZE); | ||
111 | if (!list || !buf) { | ||
112 | printf("Out of memory\n"); | ||
113 | exit(1); | ||
114 | } | ||
110 | 115 | ||
111 | for ( ; ; ) { | 116 | for ( ; ; ) { |
112 | ret = read_block(buf, BUF_SIZE, fin); | 117 | ret = read_block(buf, BUF_SIZE, fin); |