linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] mm/page_owner: use tackdepot to store stacktrace
@ 2016-05-03  5:22 js1304
  2016-05-03  5:22 ` [PATCH 1/6] mm/compaction: split freepages without holding the zone lock js1304
                   ` (5 more replies)
  0 siblings, 6 replies; 27+ messages in thread
From: js1304 @ 2016-05-03  5:22 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Vlastimil Babka, mgorman, Minchan Kim, Alexander Potapenko,
	linux-mm, linux-kernel, Joonsoo Kim

From: Joonsoo Kim <iamjoonsoo.kim@lge.com>

This patchset changes a way to store stacktrace in page_owner in order to
reduce memory usage. Below is motivation of this patchset coped
from the patch 6.

Currently, we store each page's allocation stacktrace on corresponding
page_ext structure and it requires a lot of memory. This causes the problem
that memory tight system doesn't work well if page_owner is enabled.
Moreover, even with this large memory consumption, we cannot get full
stacktrace because we allocate memory at boot time and just maintain
8 stacktrace slots to balance memory consumption. We could increase it
to more but it would make system unusable or change system behaviour.

To solve the problem, this patch uses stackdepot to store stacktrace.

Thanks.

Joonsoo Kim (6):
  mm/compaction: split freepages without holding the zone lock
  mm/page_owner: initialize page owner without holding the zone lock
  mm/page_owner: copy last_migrate_reason in copy_page_owner()
  mm/page_owner: introduce split_page_owner and replace manual handling
  tools/vm/page_owner: increase temporary buffer size
  mm/page_owner: use stackdepot to store stacktrace

 include/linux/mm.h         |   1 -
 include/linux/page_ext.h   |   4 +-
 include/linux/page_owner.h |  12 ++--
 lib/Kconfig.debug          |   1 +
 mm/compaction.c            |  45 +++++++++++----
 mm/page_alloc.c            |  37 +-----------
 mm/page_isolation.c        |   9 ++-
 mm/page_owner.c            | 136 ++++++++++++++++++++++++++++++++++++++-------
 tools/vm/page_owner_sort.c |   9 ++-
 9 files changed, 173 insertions(+), 81 deletions(-)

-- 
1.9.1

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2016-05-12 11:57 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-03  5:22 [PATCH 0/6] mm/page_owner: use tackdepot to store stacktrace js1304
2016-05-03  5:22 ` [PATCH 1/6] mm/compaction: split freepages without holding the zone lock js1304
2016-05-10 14:56   ` Vlastimil Babka
2016-05-12  2:51     ` Joonsoo Kim
2016-05-03  5:23 ` [PATCH 2/6] mm/page_owner: initialize page owner " js1304
2016-05-10 15:00   ` Vlastimil Babka
2016-05-03  5:23 ` [PATCH 3/6] mm/page_owner: copy last_migrate_reason in copy_page_owner() js1304
2016-05-10 15:13   ` Vlastimil Babka
2016-05-12  2:58     ` Joonsoo Kim
2016-05-12  6:48       ` Vlastimil Babka
2016-05-03  5:23 ` [PATCH 4/6] mm/page_owner: introduce split_page_owner and replace manual handling js1304
2016-05-10 15:14   ` Vlastimil Babka
2016-05-03  5:23 ` [PATCH 5/6] tools/vm/page_owner: increase temporary buffer size js1304
2016-05-03  5:23 ` [PATCH 6/6] mm/page_owner: use stackdepot to store stacktrace js1304
2016-05-03  8:53   ` Michal Hocko
2016-05-04  2:14     ` Joonsoo Kim
2016-05-04  2:35       ` Joonsoo Kim
2016-05-04  9:23         ` Michal Hocko
2016-05-04 15:31           ` Joonsoo Kim
2016-05-04  9:21       ` Michal Hocko
2016-05-04 15:30         ` Joonsoo Kim
2016-05-04 15:45           ` Joonsoo Kim
2016-05-04 19:41             ` Michal Hocko
2016-05-04 19:40           ` Michal Hocko
2016-05-10  7:07             ` Joonsoo Kim
2016-05-10  8:57               ` Michal Hocko
2016-05-12 11:57   ` Vlastimil Babka

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).