Thread (23 messages) 23 messages, 5 authors, 2015-09-17

Re: [RFC PATCH 0/3] Network stack, first user of SLAB/kmem_cache bulk free API.

From: Christoph Lameter <hidden>
Date: 2015-09-04 23:45:15
Also in: linux-mm

On Fri, 4 Sep 2015, Alexander Duyck wrote:
Right, but one of the reasons for Jesper to implement the bulk alloc/free is
to avoid the cmpxchg that is being used to get stuff into or off of the per
cpu lists.
There is no full cmpxchg used for the per cpu lists. Its a cmpxchg without
lock semantics which is very cheap.
In the case of network drivers they are running in softirq context almost
exclusively.  As such it is useful to have a set of buffers that can be
acquired or freed from this context without the need to use any
synchronization primitives.  Then once the softirq context ends then we can
free up some or all of the resources back to the slab allocator.
That is the case in the slab allocators.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help