diff options
author | Joonsoo Kim <iamjoonsoo.kim@lge.com> | 2016-10-07 16:58:30 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-10-07 18:46:27 -0700 |
commit | 9300d8dfd282bd1473395c5c4c76bfdc90b05978 (patch) | |
tree | 7e22780b9e02e88da9bf1bd49a78b61c4f340af2 /include | |
parent | 980ac1672e7edaa927557a5186f1967cd45afcf5 (diff) | |
download | linux-riscv-9300d8dfd282bd1473395c5c4c76bfdc90b05978.tar.gz linux-riscv-9300d8dfd282bd1473395c5c4c76bfdc90b05978.tar.bz2 linux-riscv-9300d8dfd282bd1473395c5c4c76bfdc90b05978.zip |
mm/page_owner: don't define fields on struct page_ext by hard-coding
There is a memory waste problem if we define field on struct page_ext by
hard-coding. Entry size of struct page_ext includes the size of those
fields even if it is disabled at runtime. Now, extra memory request at
runtime is possible so page_owner don't need to define it's own fields
by hard-coding.
This patch removes hard-coded define and uses extra memory for storing
page_owner information in page_owner. Most of code are just mechanical
changes.
Link: http://lkml.kernel.org/r/1471315879-32294-7-git-send-email-iamjoonsoo.kim@lge.com
Signed-off-by: Joonsoo Kim <iamjoonsoo.kim@lge.com>
Acked-by: Vlastimil Babka <vbabka@suse.cz>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/page_ext.h | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/include/linux/page_ext.h b/include/linux/page_ext.h index 179bdc4a470c..9298c393ddaa 100644 --- a/include/linux/page_ext.h +++ b/include/linux/page_ext.h @@ -44,12 +44,6 @@ enum page_ext_flags { */ struct page_ext { unsigned long flags; -#ifdef CONFIG_PAGE_OWNER - unsigned int order; - gfp_t gfp_mask; - int last_migrate_reason; - depot_stack_handle_t handle; -#endif }; extern void pgdat_page_ext_init(struct pglist_data *pgdat); |