Commit | Line | Data |
---|---|---|
644bf7b5 NG |
1 | /* |
2 | * xvmalloc memory allocator | |
3 | * | |
1130ebba | 4 | * Copyright (C) 2008, 2009, 2010 Nitin Gupta |
644bf7b5 NG |
5 | * |
6 | * This code is released using a dual license strategy: BSD/GPL | |
7 | * You can choose the licence that better fits your requirements. | |
8 | * | |
9 | * Released under the terms of 3-clause BSD License | |
10 | * Released under the terms of GNU General Public License Version 2.0 | |
11 | */ | |
12 | ||
13 | #ifndef _XV_MALLOC_H_ | |
14 | #define _XV_MALLOC_H_ | |
15 | ||
16 | #include <linux/types.h> | |
17 | ||
18 | struct xv_pool; | |
19 | ||
20 | struct xv_pool *xv_create_pool(void); | |
21 | void xv_destroy_pool(struct xv_pool *pool); | |
22 | ||
23 | int xv_malloc(struct xv_pool *pool, u32 size, struct page **page, | |
24 | u32 *offset, gfp_t flags); | |
25 | void xv_free(struct xv_pool *pool, struct page *page, u32 offset); | |
26 | ||
27 | u32 xv_get_object_size(void *obj); | |
28 | u64 xv_get_total_size_bytes(struct xv_pool *pool); | |
29 | ||
30 | #endif |