On 10/5/24 3:36 PM, Bart Van Assche wrote: > On 10/4/24 6:41 PM, Jens Axboe wrote: >> That seems over-engineered. Seems to me that either these things should >> share a slab cache (why do they need one each, if they are the same >> sized object?!). > > The size of two of the three slab caches is variable. > >> And if they really do need one, surely something ala: >> >> static atomic_long_t slab_index; >> >> sprintf(slab_name, "foo-%ld", atomic_inc_return(&slab_index)); >> >> would be all you need. > > A 32-bit counter wraps around after about 4 billion iterations, isn't > it? I did use an atomic_long_t, just forgot to use that for the pseudo code inc and return. Though I highly doubt it matters in practice... -- Jens Axboe