From d413ffafb9a72f9a98e4ca3748ef44ec14b38934 Mon Sep 17 00:00:00 2001 From: deen Date: Sat, 28 Jun 2008 09:41:44 +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 5a6189e..5a9ea4d 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -184,6 +184,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 138743a..33a4bed 100644 --- a/lustre/ldlm/ldlm_resource.c +++ b/lustre/ldlm/ldlm_resource.c @@ -974,9 +974,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"); -- 1.8.3.1