On Thu, Sep 01, 2022 at 04:47:11PM +0800, Vlastimil Babka wrote: > On 9/1/22 03:26, Feng Tang wrote: > > On Thu, Sep 01, 2022 at 12:16:17AM +0800, Vlastimil Babka wrote: > >> On 8/31/22 16:21, Marco Elver wrote: > >> > On Wed, 31 Aug 2022 at 16:04, Hyeonggon Yoo <42.hyeyoo@xxxxxxxxx> wrote: > >> > > >> >> Maybe you can include those functions too? > >> >> > >> >> - __kmem_cache_alloc_node > >> >> - kmalloc_[node_]trace, kmalloc_large[_node] > >> > > >> > This is only required if they are allocator "root" functions when > >> > entering allocator code (or may be tail called by a allocator "root" > >> > function). Because get_stack_skipnr() looks for one of the listed > >> > function prefixes in the whole stack trace. > >> > > >> > The reason __kmem_cache_free() is now required is because it is tail > >> > called by kfree() which disappears from the stack trace if the > >> > compiler does tail-call-optimization. > >> > >> I checked and I have this jmp tail call, yet all test pass here. > >> But I assume the right commit to amend is > >> 05a1c2e50809 ("mm/sl[au]b: generalize kmalloc subsystem") > >> > >> Could you Feng maybe verify that that commit is the first that fails the > >> tests, and parent commit of that is OK? Thanks. > > > > Yes, 05a1c2e50809 is the first commit that I saw the 4 kfence failed > > kunit cases. > > Thanks, squashed your patch there and pushed new for-next. Thanks! Just re-pulled slab tree's 'for-next' branch and the error can't be reproduced with it. - Feng