Re: [PATCH v4 2/2] slab: Introduce kmalloc_obj() and family

From: Gustavo A. R. Silva
Date: Sat Mar 15 2025 - 01:19:10 EST



These each return the assigned value of ptr (which may be NULL on
failure). For cases where the total size of the allocation is needed,
the kmalloc_obj_sz(), kmalloc_objs_sz(), and kmalloc_flex_sz() family
of macros can be used. For example:

info->size = struct_size(ptr, flex_member, count);
ptr = kmalloc(info->size, gfp);

becomes:

kmalloc_flex_sz(ptr, flex_member, count, gfp, &info->size);

I wonder if it'd be better to keep the gfp flags as the last argument
for all these `*_sz()` cases:

kmalloc_flex_sz(ptr, flex_member, count, &info->size, gpf);

Probably, even for __alloc_objs()

--
Gustavo