Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Michael Snyder <msnyder@cygnus.com>
To: Kevin Buettner <kevinb@cygnus.com>
Cc: Fernando Nasser <fnasser@redhat.com>, gdb-patches@sources.redhat.com
Subject: Re: RFA: EINTR in procfs_wait
Date: Wed, 11 Apr 2001 16:43:00 -0000	[thread overview]
Message-ID: <3AD4EC32.2823D032@cygnus.com> (raw)
In-Reply-To: <1010410215732.ZM12867@ocotillo.lan>

Kevin Buettner wrote:
> 
> Fernando,
> 
> I think something like this is needed.  I have two concerns though...
> 
>   1) The patch below is causing the retry counter to be incremented.
>      It's not clear to me if this is the right thing to do or not.
>      (I honestly don't know what it should be.  I'd have the same
>      concern if I saw that it wasn't being incremented.)

I wouldn't be too concerned about it -- the retry counter is 
a heuristic (and that's putting it kindly).

>   2) I think EAGAIN should be tested for in addition to EINTR.  See
>      http://sources.redhat.com/ml/gdb/2001-04/msg00078.html .  Hmm...
>      now that I look at this some more, it seems that we might
>      need another retry test somewhere else as well.

That's not unreasonable, but unlike EINTR, EAGAIN was never in there before,
so that would be a new test.  You're welcome to try it out, and so long as
nothing immediately breaks, put it in there.  You might want to have it
print a message, so that in case it does break something, we'll know why.

> But, regardless, I think this fix ought to go in.  We can add any
> necessary adjustments later on.

I'm inclined to agree, now that I've verified that the old procfs module
used to test for EINTR in a similar-but-not-identical context.

Fernando, you want to do the honors?

> On Apr 10, 11:04am, Fernando Nasser wrote:
> > Subject: RFA: EINTR in procfs_wait
> > Folks,
> >
> > I got this patch and it seems that we did forget to test for EINTR in
> > procfs_wait(). It looks like an "obvious fix" but I would like someone
> > else to double check it.
> >
> > Thanks in advance.
> >
> > Fernando
> >
> >
> >
> > 2001-04-05  Adam Mirowski  <Adam.Mirowski@Sun.COM>
> >
> >       Fixed Insight on Solaris. It was not possible to debug a process
> >       because of EINTR "errors".
> >       * procfs.c: (procfs_wait): if proc_wait_for_stop() fails
> >       with EINTR, retry the call.
> >
> >
> > Index: gdb/procfs.c
> > ------- procfs.c -------
> > *** /tmp/dMKayx_      Tue Apr 10 16:20:54 2001
> > --- procfs.c  Thu Apr  5 22:21:40 2001
> > ***************
> > *** 3518,3531 ****
> > --- 3518,3533 ----
> >
> >             if (retval != PIDGET (inferior_pid))      /* wrong child? */
> >               error ("procfs: couldn't stop process %d: wait returned %d\n",
> >                      inferior_pid, retval);
> >             /* FIXME: might I not just use waitpid?
> >                Or try find_procinfo to see if I know about this child? */
> >           }
> > +       else if (errno == EINTR)
> > +         goto wait_again;
> >         else
> >           {
> >             /* Unknown error from wait_for_stop. */
> >             proc_error (pi, "target_wait (wait_for_stop)", __LINE__);
> >           }
> >       }
> >         else
> >-- End of excerpt from Fernando Nasser


  parent reply	other threads:[~2001-04-11 16:43 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-04-10  8:08 Fernando Nasser
2001-04-10 14:57 ` Kevin Buettner
2001-04-10 17:41   ` Fernando Nasser
2001-04-11 16:43   ` Michael Snyder [this message]
2001-04-11 11:13 ` Andrew Cagney
2001-04-11 16:45 ` Michael Snyder
2001-04-13  6:53   ` Fernando Nasser

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=3AD4EC32.2823D032@cygnus.com \
    --to=msnyder@cygnus.com \
    --cc=fnasser@redhat.com \
    --cc=gdb-patches@sources.redhat.com \
    --cc=kevinb@cygnus.com \
    /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