From 66d4802310b27f0f10088bd623690654e8b87cd6 Mon Sep 17 00:00:00 2001 From: shaver Date: Thu, 7 Nov 2002 23:37:32 +0000 Subject: [PATCH] Make sure that we set last_xid and last_committed on replies from LDLM, operations, or intent-only metadata loads will result in unbounded client memory growth. --- lustre/ldlm/ldlm_lockd.c | 5 ----- lustre/mds/handler.c | 8 ++------ lustre/ost/ost_handler.c | 12 +++--------- 3 files changed, 5 insertions(+), 20 deletions(-) diff --git a/lustre/ldlm/ldlm_lockd.c b/lustre/ldlm/ldlm_lockd.c index fb2f54a..cb447b8 100644 --- a/lustre/ldlm/ldlm_lockd.c +++ b/lustre/ldlm/ldlm_lockd.c @@ -281,9 +281,6 @@ int ldlm_handle_enqueue(struct ptlrpc_request *req) "(err=%d)", err); req->rq_status = err; - if (ptlrpc_reply(req->rq_svc, req)) - LBUG(); - if (lock) { if (!err) ldlm_reprocess_all(lock->l_resource); @@ -322,8 +319,6 @@ int ldlm_handle_convert(struct ptlrpc_request *req) CDEBUG(D_DLMTRACE, "converted waiting lock %p\n", lock); req->rq_status = 0; } - if (ptlrpc_reply(req->rq_svc, req) != 0) - LBUG(); if (lock) { ldlm_reprocess_all(lock->l_resource); diff --git a/lustre/mds/handler.c b/lustre/mds/handler.c index e60cac7..4fd78ed 100644 --- a/lustre/mds/handler.c +++ b/lustre/mds/handler.c @@ -1095,16 +1095,12 @@ int mds_handle(struct ptlrpc_request *req) CDEBUG(D_INODE, "enqueue\n"); OBD_FAIL_RETURN(OBD_FAIL_LDLM_ENQUEUE, 0); rc = ldlm_handle_enqueue(req); - if (rc) - break; - RETURN(0); + break; case LDLM_CONVERT: CDEBUG(D_INODE, "convert\n"); OBD_FAIL_RETURN(OBD_FAIL_LDLM_CONVERT, 0); rc = ldlm_handle_convert(req); - if (rc) - break; - RETURN(0); + break; case LDLM_BL_CALLBACK: case LDLM_CP_CALLBACK: CDEBUG(D_INODE, "callback\n"); diff --git a/lustre/ost/ost_handler.c b/lustre/ost/ost_handler.c index 513d24b..f3e3081 100644 --- a/lustre/ost/ost_handler.c +++ b/lustre/ost/ost_handler.c @@ -532,23 +532,17 @@ static int ost_handle(struct ptlrpc_request *req) CDEBUG(D_INODE, "enqueue\n"); OBD_FAIL_RETURN(OBD_FAIL_LDLM_ENQUEUE, 0); rc = ldlm_handle_enqueue(req); - if (rc) - break; - RETURN(0); + break; case LDLM_CONVERT: CDEBUG(D_INODE, "convert\n"); OBD_FAIL_RETURN(OBD_FAIL_LDLM_CONVERT, 0); rc = ldlm_handle_convert(req); - if (rc) - break; - RETURN(0); + break; case LDLM_CANCEL: CDEBUG(D_INODE, "cancel\n"); OBD_FAIL_RETURN(OBD_FAIL_LDLM_CANCEL, 0); rc = ldlm_handle_cancel(req); - if (rc) - break; - RETURN(0); + break; case LDLM_BL_CALLBACK: case LDLM_CP_CALLBACK: CDEBUG(D_INODE, "callback\n"); -- 1.8.3.1