Skip to content

Slab allocator array operations V2

Christoph Lameter linux-mm lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 22 repliesIn review

V1->V2 from the cover letter

- Allocator will determine how to acquire the objects. Remove the flags that we exposed to the subsystems in V1.
- Restructure patch a bit to minimize size
- Add material provided by Jesper.

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3Slab infrastructure for array operationsinclude/linux/slab.h mm/slab.h mm/slab_common.c +1 more+96 -013 replies
2/3slub: Support for array operationsinclude/linux/slub_def.h mm/slub.c+116 -329 replies
3/3Array alloc test codemm/slub.c+16 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/3] Slab allocator array operations V2

V1->V2:
- Allocator will determine how to acquire the objects. Remove the flags that we exposed to the subsystems in V1.
- Restructure patch a bit to minimize size
- Add material provided by Jesper.

Attached a series of 3 patches to implement functionality to allocate arrays of pointers to slab objects. This can be used by the slab allocators to offer more optimized allocation and free paths.

Allocator performance issues were discovered by the network subsystem developers when trying to get the kernel to send at line rate to saturate a 40G link. Jesper developed special queueing methods to compensate for the performance issues. See the following material:

LWN: Improving Linux networking performance
- http://lwn.net/Articles/629155/
- YouTube: https://www.youtube.com/watch?v=3XG9-X777Jo

LWN: Toward a more efficient slab allocator
- http://lwn.net/Articles/629152/
- YouTube: https://www.youtube.com/watch?v=s0lZzP1jOzI