diff options
author | Yan, Zheng <zyan@redhat.com> | 2014-09-16 17:50:45 +0800 |
---|---|---|
committer | Sage Weil <sage@redhat.com> | 2014-10-14 12:56:48 -0700 |
commit | e4339d28f640a7c0d92903bcf389a2dfa281270d (patch) | |
tree | 428c172af1081d29613732cdcf7801f958be358f /net/ceph/messenger.c | |
parent | 0abb43dcacb52145aa265f82c914375d59dfe2da (diff) |
libceph: reference counting pagelist
this allow pagelist to present data that may be sent multiple times.
Signed-off-by: Yan, Zheng <zyan@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Diffstat (limited to 'net/ceph/messenger.c')
-rw-r--r-- | net/ceph/messenger.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/ceph/messenger.c b/net/ceph/messenger.c index e7d94113f2d6..9764c771cfb1 100644 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c @@ -3071,10 +3071,8 @@ static void ceph_msg_data_destroy(struct ceph_msg_data *data) return; WARN_ON(!list_empty(&data->links)); - if (data->type == CEPH_MSG_DATA_PAGELIST) { + if (data->type == CEPH_MSG_DATA_PAGELIST) ceph_pagelist_release(data->pagelist); - kfree(data->pagelist); - } kmem_cache_free(ceph_msg_data_cache, data); } |