]> Git Repo - linux.git/commit
mm: pack compound_dtor and compound_order into one word in struct page
authorKirill A. Shutemov <[email protected]>
Sat, 7 Nov 2015 00:29:50 +0000 (16:29 -0800)
committerLinus Torvalds <[email protected]>
Sat, 7 Nov 2015 01:50:42 +0000 (17:50 -0800)
commitf1e61557f0230d51a3df8d825f2c156e75563bff
treea62bd2c7d3df2b5632b667a46b55cd928dce8002
parent32e7ba1ea1f8d1f0ea4983e768f8b566770a55b3
mm: pack compound_dtor and compound_order into one word in struct page

The patch halves space occupied by compound_dtor and compound_order in
struct page.

For compound_order, it's trivial long -> short conversion.

For get_compound_page_dtor(), we now use hardcoded table for destructor
lookup and store its index in the struct page instead of direct pointer
to destructor. It shouldn't be a big trouble to maintain the table: we
have only two destructor and NULL currently.

This patch free up one word in tail pages for reuse. This is preparation
for the next patch.

Signed-off-by: Kirill A. Shutemov <[email protected]>
Reviewed-by: Michal Hocko <[email protected]>
Acked-by: Vlastimil Babka <[email protected]>
Reviewed-by: Andrea Arcangeli <[email protected]>
Cc: "Paul E. McKenney" <[email protected]>
Cc: Andi Kleen <[email protected]>
Cc: Aneesh Kumar K.V <[email protected]>
Cc: Christoph Lameter <[email protected]>
Cc: David Rientjes <[email protected]>
Cc: Hugh Dickins <[email protected]>
Cc: Joonsoo Kim <[email protected]>
Cc: Sergey Senozhatsky <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
include/linux/mm.h
include/linux/mm_types.h
mm/hugetlb.c
mm/page_alloc.c
This page took 0.058933 seconds and 4 git commands to generate.