diff --git a/clusterd b/clusterd
index 92bc6ac..f14fb82 100755
--- a/clusterd
+++ b/clusterd
@@ -1204,12 +1204,16 @@ sub clp_rx_LSOF {
 		defined $pid or die "$!\n";
 		unless ($pid) {
 			$socket->blocking(1);
-			open P,'lsof|' or die "$!\n";
+			open P,'timeout -k 12s 10s lsof|' or die "$!\n";
 			while (<P>) {
 				next if defined $pattern && index($_,$pattern)<0;
 				$socket->send(pack('n',length($_)).$_,0);
 			}
 			close P;
+			if ($?) {
+				$_=sprintf("** lsof timout/error on %s\n",$my_hostname);
+				$socket->send(pack('n',length($_)).$_,0);
+			}
 			close $socket;
 			exit;
 		}