diff options
| author | Pasha Tatashin <[email protected]> | 2023-01-13 15:42:53 +0000 |
|---|---|---|
| committer | Andrew Morton <[email protected]> | 2023-02-02 22:33:11 -0800 |
| commit | 6189eb82f0aec8a877190bf52e629c687ed02773 (patch) | |
| tree | 3eb6efd413832ef68f72750f89c7e327f71c1a99 /tools/perf/scripts/python/flamegraph.py | |
| parent | 950fe885a89770619e315f9b46301eebf0aab7b3 (diff) | |
mm/page_ext: do not allocate space for page_ext->flags if not needed
There is 8 byte page_ext->flags field allocated per page whenever
CONFIG_PAGE_EXTENSION is enabled. However, not every user of page_ext
uses flags. Therefore, check whether flags is needed at least by one user
and if so allocate space for it.
For example when page_table_check is enabled, on a machine with 128G
of memory before the fix:
[ 2.244288] allocated 536870912 bytes of page_ext
after the fix:
[ 2.160154] allocated 268435456 bytes of page_ext
Also, add a kernel-doc comment before page_ext_operations that describes
the fields, and remove check if need() is set, as that is now a required
field.
[[email protected]: address comments from Mike Rapoport]
Link: https://lkml.kernel.org/r/[email protected]
Link: https://lkml.kernel.org/r/[email protected]
Signed-off-by: Pasha Tatashin <[email protected]>
Acked-by: David Hildenbrand <[email protected]>
Acked-by: Vlastimil Babka <[email protected]>
Acked-by: David Rientjes <[email protected]>
Reviewed-by: Mike Rapoport (IBM) <[email protected]>
Cc: Charan Teja Kalla <[email protected]>
Cc: Li Zhe <[email protected]>
Cc: Michal Hocko <[email protected]>
Cc: Vlastimil Babka <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/flamegraph.py')
0 files changed, 0 insertions, 0 deletions