Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Nick Roberts <nickrob@snap.net.nz>
To: Daniel Jacobowitz <drow@false.org>
Cc: gdb@sources.redhat.com
Subject: Re: Merge of nickrob-async-20060513 to mainline?
Date: Tue, 26 Sep 2006 22:12:00 -0000	[thread overview]
Message-ID: <17689.42274.369631.215081@kahikatea.snap.net.nz> (raw)
In-Reply-To: <20060926123757.GA9879@nevyn.them.org>

 > Yes, this should work, though it seems cumbersome.  When you've got
 > a single thread, you don't need to pass actual data around an fd,
 > just a marker "yes i'm ready now".

I don't quite follow, that's how the event loop works.  Even user input
requires an fd through stdin_event_handler.  There is a provision for other
events but currently only file events are used.

 > Moving the call to waitpid out of linux-nat.c, and to a target
 > independent file, is a mistake - presumably that's just how you got it
 > to work quickly?  That's related to why it doesn't work for threads.
 > The vital line is "options ^= __WCLONE" in the loop in linux_nat_wait.
 > Without __WCLONE, you'll never see a wait status from a thread; with
 > it you'll never see a wait status from the main program.

Perhaps I can use __WALL as a catch all.

 > Ideally you'd be able to reuse the signal handler logic (see the calls
 > to sigprocmask and sigsuspend) and thus not have a millisecond latency
 > and excessive spinning.  That's actually a pretty important feature,
 > because context switching to gdb every millisecond or so is going to
 > really hurt performance of the debuggee.

OK, a bit more homework then.

Thanks

-- 
Nick                                           http://www.inet.net.nz/~nickrob


  reply	other threads:[~2006-09-26 22:12 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-30  2:27 Nick Roberts
2006-08-30  2:33 ` Daniel Jacobowitz
2006-08-30  3:21   ` Nick Roberts
2006-08-30  4:01     ` Daniel Jacobowitz
2006-08-30 12:31       ` Eli Zaretskii
2006-08-30 21:34       ` Nick Roberts
2006-08-30 21:43         ` Daniel Jacobowitz
2006-08-30 23:45           ` Nick Roberts
2006-09-26  8:41           ` Nick Roberts
2006-09-26 12:38             ` Daniel Jacobowitz
2006-09-26 22:12               ` Nick Roberts [this message]
2006-09-26 22:24                 ` Daniel Jacobowitz
2006-09-26 23:40                   ` Nick Roberts
2006-09-29  1:50                   ` Nick Roberts
2006-10-06  0:53               ` Nick Roberts
2006-10-06  1:26                 ` Daniel Jacobowitz
2006-10-06  2:13                   ` Nick Roberts
2006-10-06  3:24                     ` Daniel Jacobowitz
2006-10-08  3:46                       ` Nick Roberts
2006-10-09 18:00                         ` async implies sync, was " Michael Snyder
2006-10-09 20:28                           ` async implies sync Nick Roberts
2006-08-31 21:03     ` Merge of nickrob-async-20060513 to mainline? Mark Kettenis
2006-08-31 21:49       ` Nick Roberts
2006-08-31 22:29         ` Daniel Jacobowitz
2006-08-31 22:40           ` Nick Roberts
2006-08-31 22:53             ` Michael Snyder
2006-08-31 23:33               ` Nick Roberts
2006-08-31 23:37                 ` Daniel Jacobowitz
2006-08-31 23:59                   ` Jim Ingham

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=17689.42274.369631.215081@kahikatea.snap.net.nz \
    --to=nickrob@snap.net.nz \
    --cc=drow@false.org \
    --cc=gdb@sources.redhat.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