Commit b955aa70 authored by Liu Shixin's avatar Liu Shixin Committed by Andrew Morton

mm/kmemleak: make create_object return void

No caller cares about the return value of create_object(), so make it
return void.

Link: https://lkml.kernel.org/r/20220901023007.3471887-1-liushixin2@huawei.comSigned-off-by: default avatarLiu Shixin <liushixin2@huawei.com>
Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Cc: Kefeng Wang <wangkefeng.wang@huawei.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 50717ed3
...@@ -604,9 +604,8 @@ static int __save_stack_trace(unsigned long *trace) ...@@ -604,9 +604,8 @@ static int __save_stack_trace(unsigned long *trace)
* memory block and add it to the object_list and object_tree_root (or * memory block and add it to the object_list and object_tree_root (or
* object_phys_tree_root). * object_phys_tree_root).
*/ */
static struct kmemleak_object *__create_object(unsigned long ptr, size_t size, static void __create_object(unsigned long ptr, size_t size,
int min_count, gfp_t gfp, int min_count, gfp_t gfp, bool is_phys)
bool is_phys)
{ {
unsigned long flags; unsigned long flags;
struct kmemleak_object *object, *parent; struct kmemleak_object *object, *parent;
...@@ -618,7 +617,7 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size, ...@@ -618,7 +617,7 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size,
if (!object) { if (!object) {
pr_warn("Cannot allocate a kmemleak_object structure\n"); pr_warn("Cannot allocate a kmemleak_object structure\n");
kmemleak_disable(); kmemleak_disable();
return NULL; return;
} }
INIT_LIST_HEAD(&object->object_list); INIT_LIST_HEAD(&object->object_list);
...@@ -687,7 +686,6 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size, ...@@ -687,7 +686,6 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size,
*/ */
dump_object_info(parent); dump_object_info(parent);
kmem_cache_free(object_cache, object); kmem_cache_free(object_cache, object);
object = NULL;
goto out; goto out;
} }
} }
...@@ -698,21 +696,20 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size, ...@@ -698,21 +696,20 @@ static struct kmemleak_object *__create_object(unsigned long ptr, size_t size,
list_add_tail_rcu(&object->object_list, &object_list); list_add_tail_rcu(&object->object_list, &object_list);
out: out:
raw_spin_unlock_irqrestore(&kmemleak_lock, flags); raw_spin_unlock_irqrestore(&kmemleak_lock, flags);
return object;
} }
/* Create kmemleak object which allocated with virtual address. */ /* Create kmemleak object which allocated with virtual address. */
static struct kmemleak_object *create_object(unsigned long ptr, size_t size, static void create_object(unsigned long ptr, size_t size,
int min_count, gfp_t gfp) int min_count, gfp_t gfp)
{ {
return __create_object(ptr, size, min_count, gfp, false); __create_object(ptr, size, min_count, gfp, false);
} }
/* Create kmemleak object which allocated with physical address. */ /* Create kmemleak object which allocated with physical address. */
static struct kmemleak_object *create_object_phys(unsigned long ptr, size_t size, static void create_object_phys(unsigned long ptr, size_t size,
int min_count, gfp_t gfp) int min_count, gfp_t gfp)
{ {
return __create_object(ptr, size, min_count, gfp, true); __create_object(ptr, size, min_count, gfp, true);
} }
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment