From mboxrd@z Thu Jan 1 00:00:00 1970 From: Menyhart Zoltan Date: Tue, 30 Nov 2010 17:57:50 +0100 Subject: [Cluster-devel] Patch: making DLM more robust In-Reply-To: <20101123171508.GC30147@redhat.com> References: <4CEA9ADD.2050109@bull.net> <20101122173442.GA21879@redhat.com> <4CEBD6A2.8090005@bull.net> <20101123171508.GC30147@redhat.com> Message-ID: <4CF52D0E.2020800@bull.net> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi, An easy first step to make DLM more robust can be adding a time out protection to the lock space cration operation, while waiting for a "dlm_controld" action. A new memeber "ci_dlm_controld_secs" is added to "dlm_config" to set up time out in seconds, DEFAULT_DLM_CTRL_SECS is 5 seconds. At the same time, signals can be enabled and handled, too. DLM_USER_CREATE_LOCKSPACE will be able to return new error codes: -EINTR or -ETIMEDOUT. Could you please tell me why the signals are blocked within "device_write()"? I think it is safe to allow signals, surely in your original code sequences waiting in an uninterruptible way. BTW "sigprocmask()" already contains "recalc_sigpending()". out_sig: sigprocmask(SIG_SETMASK, &tmpsig, NULL); recalc_sigpending(); Thanks, Zoltan Menyhart -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: diff2 URL: