Skip to content

Commit e7d84c6

Browse files
lxbszidryomov
authored andcommitted
ceph: flush cap releases when the session is flushed
MDS expects the completed cap release prior to responding to the session flush for cache drop. Cc: [email protected] Link: http://tracker.ceph.com/issues/38009 Signed-off-by: Xiubo Li <[email protected]> Reviewed-by: Venky Shankar <[email protected]> Reviewed-by: Jeff Layton <[email protected]> Signed-off-by: Ilya Dryomov <[email protected]>
1 parent 4ec5183 commit e7d84c6

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

fs/ceph/mds_client.c

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3685,6 +3685,12 @@ static void handle_session(struct ceph_mds_session *session,
36853685
break;
36863686

36873687
case CEPH_SESSION_FLUSHMSG:
3688+
/* flush cap releases */
3689+
spin_lock(&session->s_cap_lock);
3690+
if (session->s_num_cap_releases)
3691+
ceph_flush_cap_releases(mdsc, session);
3692+
spin_unlock(&session->s_cap_lock);
3693+
36883694
send_flushmsg_ack(mdsc, session, seq);
36893695
break;
36903696

0 commit comments

Comments
 (0)