linux-um archives
 help / color / mirror / Atom feed
From: BlaisorBlade <blaisorblade_spam@yahoo.it>
To: user-mode-linux-devel@lists.sourceforge.net
Cc: Joe Marzot <gmarzot@nortelnetworks.com>, Jeff Dike <jdike@addtoit.com>
Subject: Re: [uml-devel] handle_trap - failed to wait at end of syscall
Date: Mon, 13 Sep 2004 21:39:33 +0200	[thread overview]
Message-ID: <200409132139.33256.blaisorblade_spam@yahoo.it> (raw)
In-Reply-To: <4145BF3F.3090502@nortelnetworks.com>

On Monday 13 September 2004 17:39, Joe Marzot wrote:
> remeber this one?...the latest take on this is that because we launch
> UMLs from a perl script (using fork/exec) when the perl script exits a
> SIGHUP is transmitted to the UML proc which sometimes interrupts a
> waitpid()...if that interruption occurs during the nullification of a
> syscall (now that I know what that means:) then you get a kernel panic
> like below.

> I made a small fix that seems to be working for me and looks like what's
> going on in CATCH_EINTR

> can't do this globally in CATCH_EINTR since some waitpids don't check
> status...maybe they should...maybe there is a more correct way to do
> this altogether...
I'm going to merge something like this. Also, sorry - it's about a month that 
I should do this and keep forgetting to work on other stuff.

However, it is not possible nor desirable to do this in CATCH_EINTR - retry if 
errno == EINTR is a general rule valid in every Unix program ever, while this 
is very specific to this call.

> do {
>    CATCH_EINTR(err = waitpid(pid, &status, WUNTRACED));
> } while (WIFSTOPPED(status) && (STOPSIG(status) == SIGHUP))

I'll turn that to STOPSIG(status) != SIGTRAP. I'm getting the same problem 
with SIGSEGV instead (IIRC).

However, maybe that must be != SIGTRAP and != <other signal>. I don't think 
so, but I must check to be sure. Jeff, what do you think?

Also, we don't make a distinction between real SIGTRAP and syscall stop.

Jeff, would you agree to using PTRACE_O_SYSGOOD?
See arch/i386/kernel/ptrace.c:do_syscall_trace for an explaination of this 
func.

-- 
Paolo Giarrusso, aka Blaisorblade
Linux registered user n. 292729


-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM. 
Deadline: Sept. 13. Go here: http://sf.net/ppc_contest.php
_______________________________________________
User-mode-linux-devel mailing list
User-mode-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

  reply	other threads:[~2004-09-13 19:42 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-08-11 15:32 [uml-devel] debugging UML cores Joe Marzot
2004-08-12  5:41 ` Jeff Dike
2004-08-12 15:21   ` Joe Marzot
2004-08-12 16:56     ` Jeff Dike
2004-08-12 16:16       ` Joe Marzot
2004-08-12 15:36   ` Joe Marzot
2004-08-12 15:47     ` Joe Marzot
2004-08-13 15:46     ` [uml-devel] handle_trap - failed to wait at end of syscall [was Re: [uml-devel] debugging UML cores] Joe Marzot
2004-08-13 18:01       ` Joe Marzot
2004-08-13 21:47       ` Jeff Dike
2004-08-16 17:47         ` [uml-devel] Re: handle_trap - failed to wait at end of syscall [was Re: [uml- devel] " Joe Marzot
2004-08-16 19:25           ` Joe Marzot
2004-08-16 19:53             ` D. Bahi
2004-08-17  5:26               ` Jeff Dike
2004-08-20 11:46         ` handle_trap - failed to wait at end of syscall [was Re: [uml-devel] " BlaisorBlade
2004-09-13 15:39       ` [uml-devel] handle_trap - failed to wait at end of syscall Joe Marzot
2004-09-13 19:39         ` BlaisorBlade [this message]
2004-09-13 22:14           ` Jeff Dike
2004-09-14 10:41             ` BlaisorBlade
2004-09-14 16:09               ` Joe Marzot
2004-09-14 21:23                 ` Jeff Dike
2004-09-15  5:00                   ` Richard Potter
2004-09-15 19:35                   ` Joe Marzot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200409132139.33256.blaisorblade_spam@yahoo.it \
    --to=blaisorblade_spam@yahoo.it \
    --cc=gmarzot@nortelnetworks.com \
    --cc=jdike@addtoit.com \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox