From 2772f2f804a3787b4d1c85fcdec1c14b69cbe81f Mon Sep 17 00:00:00 2001 From: deen <deen> Date: Thu, 13 Sep 2007 18:45:05 +0000 Subject: [PATCH] Never resend AST requests. b=13596 i=adilger i=deen original patch by green --- lustre/ChangeLog | 5 +++++ lustre/ldlm/ldlm_lockd.c | 2 ++ 2 files changed, 7 insertions(+) diff --git a/lustre/ChangeLog b/lustre/ChangeLog index b387525e81..1151ea4887 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -44,6 +44,11 @@ Details : "lfs find -obd UUID" will return all directory names instead of just file names. It is incorrect because the directories do not reside on the OSTs. +Severity : normal +Bugzilla : 13596 +Description: MDS hang after unclean shutdown of lots of clients +Details : Never resend AST requests. + -------------------------------------------------------------------------------- 2007-09-27 Cluster File Systems, Inc. <info@clusterfs.com> diff --git a/lustre/ldlm/ldlm_lockd.c b/lustre/ldlm/ldlm_lockd.c index acc5b32675..011cd703ca 100644 --- a/lustre/ldlm/ldlm_lockd.c +++ b/lustre/ldlm/ldlm_lockd.c @@ -567,6 +567,7 @@ int ldlm_server_blocking_ast(struct ldlm_lock *lock, req->rq_async_args.pointer_arg[0] = arg; req->rq_async_args.pointer_arg[1] = lock; req->rq_interpret_reply = ldlm_cb_interpret; + req->rq_no_resend = 1; lock_res(lock->l_resource); if (lock->l_granted_mode != lock->l_req_mode) { @@ -668,6 +669,7 @@ int ldlm_server_completion_ast(struct ldlm_lock *lock, int flags, void *data) req->rq_async_args.pointer_arg[0] = arg; req->rq_async_args.pointer_arg[1] = lock; req->rq_interpret_reply = ldlm_cb_interpret; + req->rq_no_resend = 1; body = lustre_msg_buf(req->rq_reqmsg, DLM_LOCKREQ_OFF, sizeof(*body)); body->lock_handle[0] = lock->l_remote_handle; -- GitLab