[Ocfs2-devel] Garbage ERESTARTSYS in dlmdomain.c?

Mark Fasheh mfasheh at suse.com
Mon Aug 31 14:56:51 PDT 2009


On Mon, Aug 31, 2009 at 02:14:45PM -0700, Joel Becker wrote:
> Look at this code from dlmdomain.c:
> 
> -----------------------------------------------------------------------
>                 /* If we're racing another node to the join, then we
>                  * need to back off temporarily and let them
>                  * complete. */
> #define DLM_JOIN_TIMEOUT_MSECS  90000
>                 if (status == -EAGAIN) {
>                         if (signal_pending(current)) {
>                                 status = -ERESTARTSYS;
>                                 goto bail;
>                         }
> 
>                         if (total_backoff >
>                             msecs_to_jiffies(DLM_JOIN_TIMEOUT_MSECS)) {
>                                 status = -ERESTARTSYS;


> Why are we returning -ERESTARTSYS when there isn't a signal pending?
> This seems like it could totally do something weird, like have entry.S
> get confused.

Yeah, I think that the timeout error should be returning -EAGAIN. It doesn't
make any sense for it to be -ERESTARTSYS...
	--Mark

--
Mark Fasheh



More information about the Ocfs2-devel mailing list