Commit f227e04e authored by Mike Rapoport's avatar Mike Rapoport Committed by Jonathan Corbet
Browse files

docs/vm: page_owner: convert to ReST format

parent 1b7599b5
Loading
Loading
Loading
Loading
+21 −13
Original line number Diff line number Diff line
.. _page_owner:

==================================================
page owner: Tracking about who allocated each page
-----------------------------------------------------------
==================================================

* Introduction
Introduction
============

page owner is for the tracking about who allocated each page.
It can be used to debug memory leak or to find a memory hogger.
@@ -34,11 +38,13 @@ not affect to allocation performance, especially if the static keys jump
label patching functionality is available. Following is the kernel's code
size change due to this facility.

- Without page owner
- Without page owner::

   text    data     bss     dec     hex filename
   40662   1493     644   42799    a72f mm/page_alloc.o

- With page owner
- With page owner::

   text    data     bss     dec     hex filename
   40892   1493     644   43029    a815 mm/page_alloc.o
   1427      24       8    1459     5b3 mm/page_ext.o
@@ -62,21 +68,23 @@ are catched and marked, although they are mostly allocated from struct
page extension feature. Anyway, after that, no page is left in
un-tracking state.

* Usage
Usage
=====

1) Build user-space helper::

1) Build user-space helper
	cd tools/vm
	make page_owner_sort

2) Enable page owner
	Add "page_owner=on" to boot cmdline.
2) Enable page owner: add "page_owner=on" to boot cmdline.

3) Do the job what you want to debug

4) Analyze information from page owner
4) Analyze information from page owner::

	cat /sys/kernel/debug/page_owner > page_owner_full.txt
	grep -v ^PFN page_owner_full.txt > page_owner.txt
	./page_owner_sort page_owner.txt sorted_page_owner.txt

   See the result about who allocated each page
	in the sorted_page_owner.txt.
   in the ``sorted_page_owner.txt``.