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. > +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.