Loading mm/slub.c +13 −2 Original line number Diff line number Diff line Loading @@ -2592,13 +2592,24 @@ void *__kmalloc(size_t size, gfp_t flags) } EXPORT_SYMBOL(__kmalloc); static void *kmalloc_large_node(size_t size, gfp_t flags, int node) { struct page *page = alloc_pages_node(node, flags | __GFP_COMP, get_order(size)); if (page) return page_address(page); else return NULL; } #ifdef CONFIG_NUMA void *__kmalloc_node(size_t size, gfp_t flags, int node) { struct kmem_cache *s; if (unlikely(size > PAGE_SIZE)) return kmalloc_large(size, flags); return kmalloc_large_node(size, flags, node); s = get_slab(size, flags); Loading Loading @@ -3146,7 +3157,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags, struct kmem_cache *s; if (unlikely(size > PAGE_SIZE)) return kmalloc_large(size, gfpflags); return kmalloc_large_node(size, gfpflags, node); s = get_slab(size, gfpflags); Loading Loading
mm/slub.c +13 −2 Original line number Diff line number Diff line Loading @@ -2592,13 +2592,24 @@ void *__kmalloc(size_t size, gfp_t flags) } EXPORT_SYMBOL(__kmalloc); static void *kmalloc_large_node(size_t size, gfp_t flags, int node) { struct page *page = alloc_pages_node(node, flags | __GFP_COMP, get_order(size)); if (page) return page_address(page); else return NULL; } #ifdef CONFIG_NUMA void *__kmalloc_node(size_t size, gfp_t flags, int node) { struct kmem_cache *s; if (unlikely(size > PAGE_SIZE)) return kmalloc_large(size, flags); return kmalloc_large_node(size, flags, node); s = get_slab(size, flags); Loading Loading @@ -3146,7 +3157,7 @@ void *__kmalloc_node_track_caller(size_t size, gfp_t gfpflags, struct kmem_cache *s; if (unlikely(size > PAGE_SIZE)) return kmalloc_large(size, gfpflags); return kmalloc_large_node(size, gfpflags, node); s = get_slab(size, gfpflags); Loading