Re: [PATCH 4/9] mm: vmalloc: Add a per-CPU-zone infrastructure

Uladzislau Rezki
2023-05-23T14:54:36Z

On Mon, May 22, 2023 at 11:08:38PM -0700, Christoph Hellwig wrote:
> On Mon, May 22, 2023 at 01:08:44PM +0200, Uladzislau Rezki (Sony) wrote:
> > +#define fbl(z, i, m) z->fbl[i].m
> > +#define fbl_root(z, i) fbl(z, i, root)
> > +#define fbl_head(z, i) fbl(z, i, head)
> > +
> > +#define fbl_lock(z, i) spin_lock(&fbl(z, i, lock))
> > +#define fbl_unlock(z, i) spin_unlock(&fbl(z, i, lock))
>
> Even if it is just temporary, I don't think adding these wrappers
> make much sense.
>
If open-coded, it looks like:

spin_lock(&z->fbl[BUSY].lock);
fbl_lock(z, BUSY);

the reason of adding such helpers is to make the name shorter.

> > +struct cpu_vmap_zone {
> > + /*
> > + * FREE, BUSY, LAZY bookkeeping data of this CPU zone.
> > + */
> > + struct {
> > + struct rb_root root;
> > + struct list_head head;
> > + spinlock_t lock;
> > + } fbl[NFBL];
>
> Maybe replace NFBL with something longer and more descriptive?
>
> But also in general it feels like this should be folded into a patch
> doing real work. As-is it doesn't look very useful.
>
I split it for better understanding for review. But i can fold it.

--
Uladzislau Rezki