From 2605301a0dd64a3cb30794fb3e1d7b4383adcdff Mon Sep 17 00:00:00 2001
From: deen <deen>
Date: Sat, 28 Jun 2008 09:26:53 +0000
Subject: [PATCH] In ldlm_resource_add_lock(), call to ldlm_resource_dump()
 starve other threads from the resource lock for a long time in case of long
 waiting queue, so change the debug level from D_OTHER to the less frequently
 used D_INFO.

b=15953
i=adilger
i=nathan.rutman
---
 lustre/ChangeLog            | 8 ++++++++
 lustre/ldlm/ldlm_resource.c | 6 +++---
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/lustre/ChangeLog b/lustre/ChangeLog
index 8f18e9d6f3..aa5ac4c5f1 100644
--- a/lustre/ChangeLog
+++ b/lustre/ChangeLog
@@ -191,6 +191,14 @@ Details    : Because the stride_start_offset are missing in stride read-ahead,
 	     it will cause clients read a lot of unused pages in read-ahead,
 	     then the read-performance drops.
 
+Severity   : normal
+Bugzilla   : 15953
+Description: more ldlm soft lockups
+Details    : In ldlm_resource_add_lock(), call to ldlm_resource_dump()
+             starve other threads from the resource lock for a long time in
+	     case of long waiting queue, so change the debug level from
+	     D_OTHER to the less frequently used D_INFO.
+
 -------------------------------------------------------------------------------
 
 
diff --git a/lustre/ldlm/ldlm_resource.c b/lustre/ldlm/ldlm_resource.c
index 7d9356ff87..d63f45f7d2 100644
--- a/lustre/ldlm/ldlm_resource.c
+++ b/lustre/ldlm/ldlm_resource.c
@@ -976,9 +976,9 @@ void ldlm_resource_add_lock(struct ldlm_resource *res, struct list_head *head,
 {
         check_res_locked(res);
 
-        ldlm_resource_dump(D_OTHER, res);
-        CDEBUG(D_OTHER, "About to add this lock:\n");
-        ldlm_lock_dump(D_OTHER, lock, 0);
+        ldlm_resource_dump(D_INFO, res);
+        CDEBUG(D_INFO, "About to add this lock:\n");
+        ldlm_lock_dump(D_INFO, lock, 0);
 
         if (lock->l_destroyed) {
                 CDEBUG(D_OTHER, "Lock destroyed, not adding to resource\n");
-- 
GitLab