Commit 699921d9 authored by Ilya Dryomov's avatar Ilya Dryomov

libceph: export zero_page

In preparation for msgr2, make zero_page global.
Signed-off-by: default avatarIlya Dryomov <idryomov@gmail.com>
parent 3fefd43e
...@@ -343,6 +343,7 @@ struct ceph_connection { ...@@ -343,6 +343,7 @@ struct ceph_connection {
unsigned long delay; /* current delay interval */ unsigned long delay; /* current delay interval */
}; };
extern struct page *ceph_zero_page;
extern const char *ceph_pr_addr(const struct ceph_entity_addr *addr); extern const char *ceph_pr_addr(const struct ceph_entity_addr *addr);
......
...@@ -164,7 +164,7 @@ static void con_fault(struct ceph_connection *con); ...@@ -164,7 +164,7 @@ static void con_fault(struct ceph_connection *con);
static char addr_str[ADDR_STR_COUNT][MAX_ADDR_STR_LEN]; static char addr_str[ADDR_STR_COUNT][MAX_ADDR_STR_LEN];
static atomic_t addr_str_seq = ATOMIC_INIT(0); static atomic_t addr_str_seq = ATOMIC_INIT(0);
static struct page *zero_page; /* used in certain error cases */ struct page *ceph_zero_page; /* used in certain error cases */
const char *ceph_pr_addr(const struct ceph_entity_addr *addr) const char *ceph_pr_addr(const struct ceph_entity_addr *addr)
{ {
...@@ -234,9 +234,9 @@ static void _ceph_msgr_exit(void) ...@@ -234,9 +234,9 @@ static void _ceph_msgr_exit(void)
ceph_msgr_wq = NULL; ceph_msgr_wq = NULL;
} }
BUG_ON(zero_page == NULL); BUG_ON(!ceph_zero_page);
put_page(zero_page); put_page(ceph_zero_page);
zero_page = NULL; ceph_zero_page = NULL;
ceph_msgr_slab_exit(); ceph_msgr_slab_exit();
} }
...@@ -246,9 +246,9 @@ int __init ceph_msgr_init(void) ...@@ -246,9 +246,9 @@ int __init ceph_msgr_init(void)
if (ceph_msgr_slab_init()) if (ceph_msgr_slab_init())
return -ENOMEM; return -ENOMEM;
BUG_ON(zero_page != NULL); BUG_ON(ceph_zero_page);
zero_page = ZERO_PAGE(0); ceph_zero_page = ZERO_PAGE(0);
get_page(zero_page); get_page(ceph_zero_page);
/* /*
* The number of active work items is limited by the number of * The number of active work items is limited by the number of
...@@ -1645,7 +1645,8 @@ static int write_partial_skip(struct ceph_connection *con) ...@@ -1645,7 +1645,8 @@ static int write_partial_skip(struct ceph_connection *con)
if (size == con->out_skip) if (size == con->out_skip)
more = MSG_MORE; more = MSG_MORE;
ret = ceph_tcp_sendpage(con->sock, zero_page, 0, size, more); ret = ceph_tcp_sendpage(con->sock, ceph_zero_page, 0, size,
more);
if (ret <= 0) if (ret <= 0)
goto out; goto out;
con->out_skip -= ret; con->out_skip -= ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment