1 /*
2 * This file is in the public domain.
3 * $FreeBSD$
4 */
5
6 #include <sys/param.h>
7 #include <dev/zlib/zcalloc.h>
8 #include <sys/kernel.h>
9 #include <sys/malloc.h>
10
11 MALLOC_DEFINE(M_ZLIB, "zlib", "ZLIB Compressor");
12
13 void *
zcalloc_waitok(void * nil,u_int items,u_int size)14 zcalloc_waitok(void *nil, u_int items, u_int size)
15 {
16
17 return mallocarray(items, size, M_ZLIB, M_WAITOK);
18 }
19
20 void *
zcalloc_nowait(void * nil,u_int items,u_int size)21 zcalloc_nowait(void *nil, u_int items, u_int size)
22 {
23
24 return mallocarray(items, size, M_ZLIB, M_NOWAIT);
25 }
26
27 void *
zcalloc(void * nil,u_int items,u_int size)28 zcalloc(void *nil, u_int items, u_int size)
29 {
30
31 return zcalloc_nowait(nil, items, size);
32 }
33
34 void
zcfree(void * nil,void * ptr)35 zcfree(void *nil, void *ptr)
36 {
37
38 free(ptr, M_ZLIB);
39 }
40