提交 cf060db6 编写于 作者: Y Yang Yingliang

Revert "mm: memcontrol: fix slub memory accounting"

hulk inclusion
category: bugfix
bugzilla: 51349
CVE: NA

-------------------------------------------------

This patchset https://patchwork.kernel.org/project/linux-block/cover/20190826111627.7505-1-vbabka@suse.cz/
will cause perfmance regression, so revert it and use another way to fix the
warning introduced by fix CVE-2021-27365.
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
Reviewed-by: NKefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
上级 7c429898
...@@ -1223,8 +1223,8 @@ void *kmalloc_order(size_t size, gfp_t flags, unsigned int order) ...@@ -1223,8 +1223,8 @@ void *kmalloc_order(size_t size, gfp_t flags, unsigned int order)
page = alloc_pages(flags, order); page = alloc_pages(flags, order);
if (likely(page)) { if (likely(page)) {
ret = page_address(page); ret = page_address(page);
mod_lruvec_page_state(page, NR_SLAB_UNRECLAIMABLE, mod_node_page_state(page_pgdat(page), NR_SLAB_UNRECLAIMABLE,
PAGE_SIZE << order); 1 << order);
} }
kmemleak_alloc(ret, size, 1, flags); kmemleak_alloc(ret, size, 1, flags);
kasan_kmalloc_large(ret, size, flags); kasan_kmalloc_large(ret, size, flags);
......
...@@ -3809,8 +3809,8 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node) ...@@ -3809,8 +3809,8 @@ static void *kmalloc_large_node(size_t size, gfp_t flags, int node)
page = alloc_pages_node(node, flags, order); page = alloc_pages_node(node, flags, order);
if (page) { if (page) {
ptr = page_address(page); ptr = page_address(page);
mod_lruvec_page_state(page, NR_SLAB_UNRECLAIMABLE, mod_node_page_state(page_pgdat(page), NR_SLAB_UNRECLAIMABLE,
PAGE_SIZE << order); 1 << order);
} }
kmalloc_large_node_hook(ptr, size, flags); kmalloc_large_node_hook(ptr, size, flags);
...@@ -3950,8 +3950,8 @@ void kfree(const void *x) ...@@ -3950,8 +3950,8 @@ void kfree(const void *x)
BUG_ON(!PageCompound(page)); BUG_ON(!PageCompound(page));
kfree_hook(object); kfree_hook(object);
mod_lruvec_page_state(page, NR_SLAB_UNRECLAIMABLE, mod_node_page_state(page_pgdat(page), NR_SLAB_UNRECLAIMABLE,
-(PAGE_SIZE << order)); -(1 << order));
__free_pages(page, order); __free_pages(page, order);
return; return;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册