lib/test_min_heap: update min_heap_callbacks to use default builtin swap

Replace the swp function pointer in the min_heap_callbacks of
test_min_heap with NULL, allowing direct usage of the default builtin swap
implementation.  This modification simplifies the code and improves
performance by removing unnecessary function indirection.

Link: https://lkml.kernel.org/r/20241020040200.939973-5-visitorckw@gmail.com
Signed-off-by: Kuan-Wei Chiu <visitorckw@gmail.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Arnaldo Carvalho de Melo <acme@kernel.org>
Cc: Ching-Chun (Jim) Huang <jserv@ccns.ncku.edu.tw>
Cc: Coly Li <colyli@suse.de>
Cc: Ian Rogers <irogers@google.com>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Kent Overstreet <kent.overstreet@linux.dev>
Cc: "Liang, Kan" <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Matthew Sakai <msakai@redhat.com>
Cc: Matthew Wilcox (Oracle) <willy@infradead.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Kuan-Wei Chiu 2024-10-20 12:01:54 +08:00 committed by Andrew Morton
parent 03ec56d084
commit d559bb2c6d

View File

@ -23,14 +23,6 @@ static __init bool greater_than(const void *lhs, const void *rhs, void __always_
return *(int *)lhs > *(int *)rhs; return *(int *)lhs > *(int *)rhs;
} }
static __init void swap_ints(void *lhs, void *rhs, void __always_unused *args)
{
int temp = *(int *)lhs;
*(int *)lhs = *(int *)rhs;
*(int *)rhs = temp;
}
static __init int pop_verify_heap(bool min_heap, static __init int pop_verify_heap(bool min_heap,
struct min_heap_test *heap, struct min_heap_test *heap,
const struct min_heap_callbacks *funcs) const struct min_heap_callbacks *funcs)
@ -72,7 +64,7 @@ static __init int test_heapify_all(bool min_heap)
}; };
struct min_heap_callbacks funcs = { struct min_heap_callbacks funcs = {
.less = min_heap ? less_than : greater_than, .less = min_heap ? less_than : greater_than,
.swp = swap_ints, .swp = NULL,
}; };
int i, err; int i, err;
@ -104,7 +96,7 @@ static __init int test_heap_push(bool min_heap)
}; };
struct min_heap_callbacks funcs = { struct min_heap_callbacks funcs = {
.less = min_heap ? less_than : greater_than, .less = min_heap ? less_than : greater_than,
.swp = swap_ints, .swp = NULL,
}; };
int i, temp, err; int i, temp, err;
@ -136,7 +128,7 @@ static __init int test_heap_pop_push(bool min_heap)
}; };
struct min_heap_callbacks funcs = { struct min_heap_callbacks funcs = {
.less = min_heap ? less_than : greater_than, .less = min_heap ? less_than : greater_than,
.swp = swap_ints, .swp = NULL,
}; };
int i, temp, err; int i, temp, err;
@ -175,7 +167,7 @@ static __init int test_heap_del(bool min_heap)
heap.nr = ARRAY_SIZE(values); heap.nr = ARRAY_SIZE(values);
struct min_heap_callbacks funcs = { struct min_heap_callbacks funcs = {
.less = min_heap ? less_than : greater_than, .less = min_heap ? less_than : greater_than,
.swp = swap_ints, .swp = NULL,
}; };
int i, err; int i, err;