mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-26 21:54:11 +08:00
mm: page_frag: use __alloc_pages() to replace alloc_pages_node()
It seems there is about 24Bytes binary size increase for __page_frag_cache_refill() after refactoring in arm64 system with 64K PAGE_SIZE. By doing the gdb disassembling, It seems we can have more than 100Bytes decrease for the binary size by using __alloc_pages() to replace alloc_pages_node(), as there seems to be some unnecessary checking for nid being NUMA_NO_NODE, especially when page_frag is part of the mm system. CC: Andrew Morton <akpm@linux-foundation.org> CC: Linux-MM <linux-mm@kvack.org> Signed-off-by: Yunsheng Lin <linyunsheng@huawei.com> Reviewed-by: Alexander Duyck <alexanderduyck@fb.com> Link: https://patch.msgid.link/20241028115343.3405838-8-linyunsheng@huawei.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
0c3ce2f502
commit
ec397ea00c
@ -56,11 +56,11 @@ static struct page *__page_frag_cache_refill(struct page_frag_cache *nc,
|
|||||||
#if (PAGE_SIZE < PAGE_FRAG_CACHE_MAX_SIZE)
|
#if (PAGE_SIZE < PAGE_FRAG_CACHE_MAX_SIZE)
|
||||||
gfp_mask = (gfp_mask & ~__GFP_DIRECT_RECLAIM) | __GFP_COMP |
|
gfp_mask = (gfp_mask & ~__GFP_DIRECT_RECLAIM) | __GFP_COMP |
|
||||||
__GFP_NOWARN | __GFP_NORETRY | __GFP_NOMEMALLOC;
|
__GFP_NOWARN | __GFP_NORETRY | __GFP_NOMEMALLOC;
|
||||||
page = alloc_pages_node(NUMA_NO_NODE, gfp_mask,
|
page = __alloc_pages(gfp_mask, PAGE_FRAG_CACHE_MAX_ORDER,
|
||||||
PAGE_FRAG_CACHE_MAX_ORDER);
|
numa_mem_id(), NULL);
|
||||||
#endif
|
#endif
|
||||||
if (unlikely(!page)) {
|
if (unlikely(!page)) {
|
||||||
page = alloc_pages_node(NUMA_NO_NODE, gfp, 0);
|
page = __alloc_pages(gfp, 0, numa_mem_id(), NULL);
|
||||||
order = 0;
|
order = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user