Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'ceph-for-5.0-rc8' of git://github.com/ceph/ceph-client

Pull ceph fixes from Ilya Dryomov:
"Two bug fixes for old issues, both marked for stable"

* tag 'ceph-for-5.0-rc8' of git://github.com/ceph/ceph-client:
ceph: avoid repeatedly adding inode to mdsc->snap_flush_list
libceph: handle an empty authorize reply

+11 -7
+2 -1
fs/ceph/snap.c
··· 616 616 capsnap->size); 617 617 618 618 spin_lock(&mdsc->snap_flush_lock); 619 - list_add_tail(&ci->i_snap_flush_item, &mdsc->snap_flush_list); 619 + if (list_empty(&ci->i_snap_flush_item)) 620 + list_add_tail(&ci->i_snap_flush_item, &mdsc->snap_flush_list); 620 621 spin_unlock(&mdsc->snap_flush_lock); 621 622 return 1; /* caller may want to ceph_flush_snaps */ 622 623 }
+9 -6
net/ceph/messenger.c
··· 2058 2058 dout("process_connect on %p tag %d\n", con, (int)con->in_tag); 2059 2059 2060 2060 if (con->auth) { 2061 + int len = le32_to_cpu(con->in_reply.authorizer_len); 2062 + 2061 2063 /* 2062 2064 * Any connection that defines ->get_authorizer() 2063 2065 * should also define ->add_authorizer_challenge() and ··· 2069 2067 */ 2070 2068 if (con->in_reply.tag == CEPH_MSGR_TAG_CHALLENGE_AUTHORIZER) { 2071 2069 ret = con->ops->add_authorizer_challenge( 2072 - con, con->auth->authorizer_reply_buf, 2073 - le32_to_cpu(con->in_reply.authorizer_len)); 2070 + con, con->auth->authorizer_reply_buf, len); 2074 2071 if (ret < 0) 2075 2072 return ret; 2076 2073 ··· 2079 2078 return 0; 2080 2079 } 2081 2080 2082 - ret = con->ops->verify_authorizer_reply(con); 2083 - if (ret < 0) { 2084 - con->error_msg = "bad authorize reply"; 2085 - return ret; 2081 + if (len) { 2082 + ret = con->ops->verify_authorizer_reply(con); 2083 + if (ret < 0) { 2084 + con->error_msg = "bad authorize reply"; 2085 + return ret; 2086 + } 2086 2087 } 2087 2088 } 2088 2089