On Sat, Jun 29, 2019 at 7:05 AM Alexey Dobriyan <[email protected]> wrote: > > > - if (flags & SLAB_PANIC) > > - panic("Cannot create slab %s size=%u realsize=%u order=%u > > offset=%u flags=%lx\n", > > - s->name, s->size, s->size, > > - oo_order(s->oo), s->offset, (unsigned long)flags); > > This is wrong. Without SLAB_PANIC people will start to implement error > checking out of habit and add all slightly different error messages. > This simply increases text and rodata size. > > If memcg kmem caches creation failure is OK, then SLAB_PANIC should not > be passed. > > The fact that SLAB doesn't implement SLAB_PANIC is SLAB bug.
I do not agree with you. IMHO the kmem_cache_create_usercopy() is the right place to handle SLAB_PANIC which is handling it. If you want extra info here, you can add pr_warn for SLAB_PANIC here and the caller will still and rightfully do the panic(). thanks, Shakeel

