Re: [PATCH v6 00/37] Memory allocation profiling

Klara Modin
2024-04-05T14:30:24Z

On 2024-04-05 16:14, Suren Baghdasaryan wrote:
> On Fri, Apr 5, 2024 at 6:37 AM Klara Modin <klarasmodin@gmail.com> wrote:
>> If I enable this, I consistently get percpu allocation failures. I can
>> occasionally reproduce it in qemu. I've attached the logs and my config,
>> please let me know if there's anything else that could be relevant.
>
> Thanks for the report!
> In debug_alloc_profiling.log I see:
>
> [ 7.445127] percpu: limit reached, disable warning
>
> That's probably the reason. I'll take a closer look at the cause of
> that and how we can fix it.

Thanks!

>
> In qemu-alloc3.log I see couple of warnings:
>
> [ 1.111620] alloc_tag was not set
> [ 1.111880] WARNING: CPU: 0 PID: 164 at
> include/linux/alloc_tag.h:118 kfree (./include/linux/alloc_tag.h:118
> (discriminator 1) ./include/linux/alloc_tag.h:161 (discriminator 1)
> mm/slub.c:2043 ...
>
> [ 1.161710] alloc_tag was not cleared (got tag for fs/squashfs/cache.c:413)
> [ 1.162289] WARNING: CPU: 0 PID: 195 at
> include/linux/alloc_tag.h:109 kmalloc_trace_noprof
> (./include/linux/alloc_tag.h:109 (discriminator 1)
> ./include/linux/alloc_tag.h:149 (discriminator 1) ...
>
> Which means we missed to instrument some allocation. Can you please
> check if disabling CONFIG_MEM_ALLOC_PROFILING_DEBUG fixes QEMU case?
> In the meantime I'll try to reproduce and fix this.
> Thanks,
> Suren.

That does seem to be the case from what I can tell. I didn't get the
warning in qemu consistently, but it hasn't reappeared for a number of
times at least with the debugging option off.

Regards,
Klara Modin