slab: add kmem_cache_zalloc()
authorBarret Rhoden <brho@cs.berkeley.edu>
Wed, 28 Aug 2019 20:40:43 +0000 (16:40 -0400)
committerBarret Rhoden <brho@cs.berkeley.edu>
Tue, 1 Oct 2019 14:17:01 +0000 (10:17 -0400)
commit9473eb857404be2f196b735a02ece68d514809ff
tree5d501aa83869f533c92addd23233eb274f7fb36a
parentbe5707e19ee2ae0bb7f39e5be1501fcbc4259e83
slab: add kmem_cache_zalloc()

You could argue that the caller could do this with a ctor, though it
depends on when we run the ctors.  Do we cache constructed objects in
magazines?  I'd guess 'yes', without a lot of thought, so then each
separate allocation wouldn't be zeroed.

The other reason to make a separate function for this is that it's
easier to just implement it.  We have the object size in the kc, but the
ctor function pointer actually *doesn't* have that info, so we'd need to
pass it through.  Minor pain, chance to mess it up, etc.

The other other reason is that Linux has this function.

Signed-off-by: Barret Rhoden <brho@cs.berkeley.edu>
kern/include/slab.h
kern/src/slab.c