From: phil Date: Sat, 26 Feb 2005 02:50:01 +0000 (+0000) Subject: Don't hold the pinger_sem in ptlrpc_pinger_sending_on_import. X-Git-Tag: v1_8_0_110~486^7~182 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=8294fdb095f184dacf14ef063876cbaf45a6f91a;p=fs%2Flustre-release.git Don't hold the pinger_sem in ptlrpc_pinger_sending_on_import. It's an inherently racy operation in the first place, and until the pinger thread is fixed not to hold the pinger_sem while it's waiting for an upcall to complete, it prevents ptlrpcd from needlessly blocking. --- diff --git a/lustre/ChangeLog b/lustre/ChangeLog index e37117f..000b5c6 100644 --- a/lustre/ChangeLog +++ b/lustre/ChangeLog @@ -39,6 +39,7 @@ tbd Cluster File Systems, Inc. - allow readahead allocations to fail when low on memory (5383) - mmap locking landed again, after considerable improvement (2828) - fix lustre/lustrefs init scripts for SuSE (patch from Scali, 5702) + - don't hold the pinger_sem in ptlrpc_pinger_sending_on_import 2004-11-23 Cluster File Systems, Inc. * version 1.4.0 diff --git a/lustre/ptlrpc/pinger.c b/lustre/ptlrpc/pinger.c index 88f9694..299fc34 100644 --- a/lustre/ptlrpc/pinger.c +++ b/lustre/ptlrpc/pinger.c @@ -235,9 +235,7 @@ int ptlrpc_stop_pinger(void) void ptlrpc_pinger_sending_on_import(struct obd_import *imp) { - down(&pinger_sem); imp->imp_next_ping = jiffies + (obd_timeout * HZ); - up(&pinger_sem); } int ptlrpc_pinger_add_import(struct obd_import *imp)