[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <f9eabcda0704250805w73279d07i4655f47fa00c2ff0@mail.gmail.com>
Date: Wed, 25 Apr 2007 12:05:09 -0300
From: "Miguel Freitas" <mfreitas@...il.com>
To: linux-kernel@...r.kernel.org
Subject: Re: Advice on debuging the fork syscall hanging forever
On 4/25/07, Miguel Freitas <mfreitas@...il.com> wrote:
> hey, could it be that this -513 is actually -ERESTARTNOINTR?
if so, that would be a good explanation why it hangs.
- copy_process() checks for pending signals, then set retval =
-ERESTARTNOINTR and returns.
- handle_signal has the following code:
case -ERESTARTNOINTR:
regs->rax = regs->orig_rax;
regs->rip -= 2;
break;
looks like it will keep trying to reenter the syscall forever,
subtracting 2 from ip will restart the syscall. by some reason the
signal is never really handled.
Miguel
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists