Whamcloud - gitweb
LU-4413 ptlrpc: don't try to recover no_recov connection 96/8996/4
authorAndreas Dilger <andreas.dilger@intel.com>
Sat, 25 Jan 2014 01:16:43 +0000 (18:16 -0700)
committerOleg Drokin <oleg.drokin@intel.com>
Sat, 22 Feb 2014 08:05:32 +0000 (08:05 +0000)
commitc2fdaa739a0ff8e04531a3f153f132d631d1a16f
tree4d223ba90e961357e0cd3dada4ecc90839706301
parent76729a1bd0421113ebf30adb018536f820d86fbb
LU-4413 ptlrpc: don't try to recover no_recov connection

If a connection has been stopped with ptlrpc_pinger_del_import() and
marked obd_no_recov, don't reconnect in ptlrpc_disconnect_import() if
the import is already disconnected.  Otherwise, without the pinger it
will just wait there indefinitely for the reconnection that will never
happen.

Put the obd_no_recov check inside ptlrpc_import_in_recovery() so that
any threads waiting on the connection to recover would also be broken
out of their sleep if obd_no_recov is set.

Signed-off-by: Andreas Dilger <andreas.dilger@intel.com>
Change-Id: Icd8041be0ce344add8d67b026353df1b1e0cab07
Reviewed-on: http://review.whamcloud.com/8996
Tested-by: Jenkins
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Reviewed-by: wangdi <di.wang@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/osp/lwp_dev.c
lustre/osp/osp_dev.c
lustre/ptlrpc/import.c
lustre/ptlrpc/recover.c