aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python/mem-phys-addr.py
diff options
context:
space:
mode:
authorKeith Busch <[email protected]>2018-10-26 22:10:28 +0000
committerLinus Torvalds <[email protected]>2018-10-26 23:38:15 +0000
commitdf06b37ffe5a442503b7095b77b0a970df515459 (patch)
tree2fdb301eba4b4c2240595040496096b3a6489c79 /tools/perf/scripts/python/mem-phys-addr.py
parentRevert "x86/e820: put !E820_TYPE_RAM regions into memblock.reserved" (diff)
downloadkernel-df06b37ffe5a442503b7095b77b0a970df515459.tar.gz
kernel-df06b37ffe5a442503b7095b77b0a970df515459.zip
mm/gup: cache dev_pagemap while pinning pages
Getting pages from ZONE_DEVICE memory needs to check the backing device's live-ness, which is tracked in the device's dev_pagemap metadata. This metadata is stored in a radix tree and looking it up adds measurable software overhead. This patch avoids repeating this relatively costly operation when dev_pagemap is used by caching the last dev_pagemap while getting user pages. The gup_benchmark kernel self test reports this reduces time to get user pages to as low as 1/3 of the previous time. Link: http://lkml.kernel.org/r/[email protected] Signed-off-by: Keith Busch <[email protected]> Reviewed-by: Dan Williams <[email protected]> Acked-by: Kirill A. Shutemov <[email protected]> Cc: Dave Hansen <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/mem-phys-addr.py')
0 files changed, 0 insertions, 0 deletions