[PATCH v3] mempool: simplify get objects

Andrew Rybchenko andrew.rybchenko at oktetlabs.ru
Tue Feb 17 07:53:09 CET 2026


On 2/16/26 12:27 PM, Morten Brørup wrote:
> Removed explicit test for build time constant request size,
> and added comment that the compiler loop unrolls when request size is
> build time constant, to improve source code readability.
> 
> Moved setting cache->len up before the copy loop; not only for code
> similarity (cache->len is now set before each copy loop), but also as an
> optimization:
> The function's pointer parameters are not marked restrict, so writing to
> obj_table in the copy loop might formally modify cache->size. And thus,
> setting cache->len = cache->size after the copy loop requires loading
> cache->size again after copying the objects.
> Moving this line up before the copy loop avoids that extra load of
> cache->size when setting cache->len.
> 
> Similarly, moved statistics update up before the copy loops.
> 
> Signed-off-by: Morten Brørup <mb at smartsharesystems.com>

Reviewed-by: Andrew Rybchenko <andrew.rybchenko at oktetlabs.ru>



More information about the dev mailing list