Re: [PATCH] slob: add size header to all allocations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/20/21 13:46, Hyeonggon Yoo wrote:
> On Sun, Oct 17, 2021 at 08:38:41PM -0700, Rustam Kovhaev wrote:
>> Let's prepend all  allocations of (PAGE_SIZE - align_offset) and less
>> with the size header. This way kmem_cache_alloc() memory can be freed
>> with kfree() and the other way around, as long as they are less than
>> (PAGE_SIZE - align_offset).
> 
> Hello Rustam, I measured its impact on memory usage on
> tiny kernel configuration as SLOB is used in very small machine.
> 
> on x86 32 bit + tinyconfig:
>     Before:
>     Slab:                668 kB
> 
>     After:
>     Slab:                688~692 kB
> 
> it adds 20~24kB.

Thanks for the measurement. That's 3.5% increase.

> 
>> 
>> The main reason for this change is to simplify SLOB a little bit, make
>> it a bit easier to debug whenever something goes wrong.
>>
> 
> It seems acceptable But I wonder it is worth to increase memory usage
> to allow freeing kmem_cache_alloc-ed objects by kfree()?

Not for the reason above, but for providing a useful API guarantee
regardless of selected slab allocator IMHO yes.

> Thanks,
> Hyeonggon
> 
>> meminfo right after the system boot, without the patch:
>> Slab:              35500 kB
>> 
>> the same, with the patch:
>> Slab:              36396 kB
>> 
> 





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux