On Wed, Aug 31, 2022 at 03:30:51PM +0800, Feng Tang wrote: > When testing the linux-next kernel, kfence's kunit test reported some > errors: > > [ 12.812412] not ok 7 - test_double_free > [ 13.011968] not ok 9 - test_invalid_addr_free > [ 13.438947] not ok 11 - test_corruption > [ 18.635647] not ok 18 - test_kmalloc_aligned_oob_write > > Further check shows there is the "common kmalloc" patchset from > Hyeonggon Yoo, which cleanup the kmalloc code and make a better > sharing of slab/slub. There is some function name change around it, > which was not recognized by current kfence function name handling > code, and interpreted as error. > > Add new function name "__kmem_cache_free" to make it known to kfence. > > Signed-off-by: Feng Tang <feng.tang@xxxxxxxxx> > --- > mm/kfence/report.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/mm/kfence/report.c b/mm/kfence/report.c > index f5a6d8ba3e21..7e496856c2eb 100644 > --- a/mm/kfence/report.c > +++ b/mm/kfence/report.c > @@ -86,6 +86,7 @@ static int get_stack_skipnr(const unsigned long stack_entries[], int num_entries > /* Also the *_bulk() variants by only checking prefixes. */ > if (str_has_prefix(buf, ARCH_FUNC_PREFIX "kfree") || > str_has_prefix(buf, ARCH_FUNC_PREFIX "kmem_cache_free") || > + str_has_prefix(buf, ARCH_FUNC_PREFIX "__kmem_cache_free") || > str_has_prefix(buf, ARCH_FUNC_PREFIX "__kmalloc") || > str_has_prefix(buf, ARCH_FUNC_PREFIX "kmem_cache_alloc")) > goto found; > -- > 2.27.0 > Thank you for catching this! Unfortunately not reproducible on my environment with linux-next (IDK why). Maybe you can include those functions too? - __kmem_cache_alloc_node - kmalloc_[node_]trace, kmalloc_large[_node] -- Thanks, Hyeonggon