Re: [RFC PATCH] Introducing lockless cache built on top of slab allocator

From: John Garry
Date: Mon Sep 20 2021 - 10:37:59 EST


On 20/09/2021 02:53, Matthew Wilcox wrote:
On Mon, Sep 20, 2021 at 01:09:38AM +0000, Hyeonggon Yoo wrote:
Hello Matthew, Thanks to give me a comment! I appreciate it.

On Sun, Sep 19, 2021 at 08:17:44PM +0100, Matthew Wilcox wrote:
On Sun, Sep 19, 2021 at 04:42:39PM +0000, Hyeonggon Yoo wrote:
It is just simple proof of concept, and not ready for submission yet.
There can be wrong code (like wrong gfp flags, or wrong error handling,
etc) it is just simple proof of concept. I want comment from you.

Have you read:

https://www.usenix.org/legacy/event/usenix01/full_papers/bonwick/bonwick_html/
The relevant part of that paper is section 3, magazines. We should have
low and high water marks for number of objects


In case unknown, jfyi there is an implementation of this in drivers/iommu/iova.c

Thanks,
John

I haven't read that before, but after reading it seems not different from
SLAB's percpu queuing.
and we should allocate
from / free to the slab allocator in batches. Slab has bulk alloc/free
APIs already.