Messages in this thread | | | Date | Tue, 26 Jan 2016 20:40:13 -0800 | From | Andrew Morton <> | Subject | Re: [PATCH 00/16] mm/slab: introduce new freed objects management way, OBJFREELIST_SLAB |
| |
On Thu, 14 Jan 2016 14:24:13 +0900 Joonsoo Kim <js1304@gmail.com> wrote:
> This patchset implements new freed object management way, that is, > OBJFREELIST_SLAB. Purpose of it is to reduce memory overhead in SLAB. > > SLAB needs a array to manage freed objects in a slab. If there is > leftover after objects are packed into a slab, we can use it as > a management array, and, in this case, there is no memory waste. > But, in the other cases, we need to allocate extra memory for > a management array or utilize dedicated internal memory in a slab for it. > Both cases causes memory waste so it's not good. > > With this patchset, freed object itself can be used for a management > array. So, memory waste could be reduced. Detailed idea and numbers > are described in last patch's commit description. Please refer it. > > In fact, I tested another idea implementing OBJFREELIST_SLAB with > extendable linked array through another freed object. It can remove > memory waste completely but it causes more computational overhead > in critical lock path and it seems that overhead outweigh benefit. > So, this patchset doesn't include it. I will attach prototype just for > a reference.
It appears that this patchset is perhaps due a couple of touchups from Christoph's comments. I'll grab it as-is as I want to get an mmotm into linux-next tomorrow then vanish for a few days.
| |