From: Sage Weil Date: Fri, 15 Jun 2012 19:32:04 +0000 (-0700) Subject: Merge tag 'v3.5-rc1' X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=9a64e8e0ace51b309fdcff4b4754b3649250382a;p=deliverable%2Flinux.git Merge tag 'v3.5-rc1' Linux 3.5-rc1 Conflicts: net/ceph/messenger.c --- 9a64e8e0ace51b309fdcff4b4754b3649250382a diff --cc net/ceph/messenger.c index bdbecac2d69d,524f4e4f598b..5e9f61d6d234 --- a/net/ceph/messenger.c +++ b/net/ceph/messenger.c @@@ -1749,8 -1666,9 +1749,8 @@@ static int read_partial_message(struct int size; int end; int ret; - unsigned front_len, middle_len, data_len; + unsigned int front_len, middle_len, data_len; bool do_datacrc = !con->msgr->nocrc; - int skip; u64 seq; u32 crc; @@@ -2459,27 -2373,17 +2459,27 @@@ void ceph_msg_revoke(struct ceph_msg *m /* * Revoke a message that we may be reading data into */ -void ceph_con_revoke_message(struct ceph_connection *con, struct ceph_msg *msg) +void ceph_msg_revoke_incoming(struct ceph_msg *msg) { + struct ceph_connection *con; + + BUG_ON(msg == NULL); + if (!msg->con) { + dout("%s msg %p null con\n", __func__, msg); + + return; /* Message not in our possession */ + } + + con = msg->con; mutex_lock(&con->mutex); - if (con->in_msg && con->in_msg == msg) { + if (con->in_msg == msg) { - unsigned front_len = le32_to_cpu(con->in_hdr.front_len); - unsigned middle_len = le32_to_cpu(con->in_hdr.middle_len); - unsigned data_len = le32_to_cpu(con->in_hdr.data_len); + unsigned int front_len = le32_to_cpu(con->in_hdr.front_len); + unsigned int middle_len = le32_to_cpu(con->in_hdr.middle_len); + unsigned int data_len = le32_to_cpu(con->in_hdr.data_len); /* skip rest of message */ - dout("con_revoke_pages %p msg %p revoked\n", con, msg); - con->in_base_pos = con->in_base_pos - + dout("%s %p msg %p revoked\n", __func__, con, msg); + con->in_base_pos = con->in_base_pos - sizeof(struct ceph_msg_header) - front_len - middle_len -