]> git.proxmox.com Git - mirror_ubuntu-zesty-kernel.git/blame - include/linux/ceph/msgpool.h
Merge tag 'firewire-updates' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee139...
[mirror_ubuntu-zesty-kernel.git] / include / linux / ceph / msgpool.h
CommitLineData
8fc91fd8
SW
1#ifndef _FS_CEPH_MSGPOOL
2#define _FS_CEPH_MSGPOOL
3
d52f847a 4#include <linux/mempool.h>
8fc91fd8
SW
5#include "messenger.h"
6
7/*
8 * we use memory pools for preallocating messages we may receive, to
9 * avoid unexpected OOM conditions.
10 */
11struct ceph_msgpool {
4f48280e 12 const char *name;
d52f847a 13 mempool_t *pool;
8fc91fd8 14 int front_len; /* preallocated payload size */
8fc91fd8
SW
15};
16
17extern int ceph_msgpool_init(struct ceph_msgpool *pool,
4f48280e
SW
18 int front_len, int size, bool blocking,
19 const char *name);
8fc91fd8 20extern void ceph_msgpool_destroy(struct ceph_msgpool *pool);
8f3bc053
SW
21extern struct ceph_msg *ceph_msgpool_get(struct ceph_msgpool *,
22 int front_len);
8fc91fd8
SW
23extern void ceph_msgpool_put(struct ceph_msgpool *, struct ceph_msg *);
24
25#endif