Re: [PATCH v3] mm/page_ext: Do not allocate space for page_ext->flags if not needed

From: David Hildenbrand
Date: Mon Jan 16 2023 - 05:54:14 EST


On 16.01.23 11:51, Vlastimil Babka wrote:
On 1/13/23 16:42, Pasha Tatashin wrote:
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 comment before page_ext_operations that describes the
field, and remove check if need() is set, as that is now a required
field.

Signed-off-by: Pasha Tatashin <pasha.tatashin@xxxxxxxxxx>

Acked-by: Vlastimil Babka <vbabka@xxxxxxx>

Mike's comments look reasonable to me.

Seconded

Acked-by: David Hildenbrand <david@xxxxxxxxxx>

--
Thanks,

David / dhildenb