|  | #ifndef _ZBUD_H_ | 
|  | #define _ZBUD_H_ | 
|  |  | 
|  | #include <linux/types.h> | 
|  |  | 
|  | struct zbud_pool; | 
|  |  | 
|  | struct zbud_ops { | 
|  | int (*evict)(struct zbud_pool *pool, unsigned long handle); | 
|  | }; | 
|  |  | 
|  | struct zbud_pool *zbud_create_pool(gfp_t gfp, struct zbud_ops *ops); | 
|  | void zbud_destroy_pool(struct zbud_pool *pool); | 
|  | int zbud_alloc(struct zbud_pool *pool, int size, gfp_t gfp, | 
|  | unsigned long *handle); | 
|  | void zbud_free(struct zbud_pool *pool, unsigned long handle); | 
|  | int zbud_reclaim_page(struct zbud_pool *pool, unsigned int retries); | 
|  | void *zbud_map(struct zbud_pool *pool, unsigned long handle); | 
|  | void zbud_unmap(struct zbud_pool *pool, unsigned long handle); | 
|  | u64 zbud_get_pool_size(struct zbud_pool *pool); | 
|  |  | 
|  | #endif /* _ZBUD_H_ */ |