1
0
Fork 0

ceph: propagate mds session allocation failures to caller

Return error to original caller if register_session() fails.

Signed-off-by: Sage Weil <sage@newdream.net>
hifive-unleashed-5.1
Sage Weil 2010-03-20 20:43:28 -07:00
parent 8f883c24de
commit 9c423956b8
1 changed files with 6 additions and 1 deletions

View File

@ -1567,8 +1567,13 @@ static int __do_request(struct ceph_mds_client *mdsc,
/* get, open session */
session = __ceph_lookup_mds_session(mdsc, mds);
if (!session)
if (!session) {
session = register_session(mdsc, mds);
if (IS_ERR(session)) {
err = PTR_ERR(session);
goto finish;
}
}
dout("do_request mds%d session %p state %s\n", mds, session,
session_state_name(session->s_state));
if (session->s_state != CEPH_MDS_SESSION_OPEN &&