* gdb-6.6 mingw port hangs after Ctrl-C
@ 2007-08-20 16:20 Roland Puntaier
2007-08-20 16:24 ` Daniel Jacobowitz
0 siblings, 1 reply; 39+ messages in thread
From: Roland Puntaier @ 2007-08-20 16:20 UTC (permalink / raw)
To: gdb
Dear GDB community,
With cygwin GDB I used to abandon the remote target by twice typing
Ctrl-C.
I would like to switch to the gdb-6.6 mingw port, because that does not
need any cygwin dlls.
But here I ran into a hang:
(gdb) c
Continuing.
<twice Ctrl-C goes here>
Interrupted while waiting for the program.
Give up (and stop debugging it)? (y or n) y
<hang>
Maybe someone with a better understanding of gdb sources can give me a
hint on how to overcome this issue.
I've tried to debug into gdb, but the Ctrl-C is intercepted by the GDB I
use to debug. (Any Idea how I can make GDB stop intercepting Ctrl-C?)
Regards, Roland
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-20 16:20 gdb-6.6 mingw port hangs after Ctrl-C Roland Puntaier
@ 2007-08-20 16:24 ` Daniel Jacobowitz
2007-08-20 19:16 ` Eli Zaretskii
0 siblings, 1 reply; 39+ messages in thread
From: Daniel Jacobowitz @ 2007-08-20 16:24 UTC (permalink / raw)
To: Roland Puntaier; +Cc: gdb
On Mon, Aug 20, 2007 at 05:49:53PM +0200, Roland Puntaier wrote:
> Dear GDB community,
>
> With cygwin GDB I used to abandon the remote target by twice typing
> Ctrl-C.
>
> I would like to switch to the gdb-6.6 mingw port, because that does not
> need any cygwin dlls.
> But here I ran into a hang:
>
> (gdb) c
> Continuing.
> <twice Ctrl-C goes here>
> Interrupted while waiting for the program.
> Give up (and stop debugging it)? (y or n) y
> <hang>
>
> Maybe someone with a better understanding of gdb sources can give me a
> hint on how to overcome this issue.
Some of us at CodeSourcery keep trying to fix this, but no luck so
far. Control-C handling on Windows is completely different from on
POSIX operating systems, because the handler runs in a new thread
instead of interrupting the main thread of execution. This means
that GDB's signal handling, which relies on longjmp, does not work.
> I've tried to debug into gdb, but the Ctrl-C is intercepted by the GDB I
> use to debug. (Any Idea how I can make GDB stop intercepting Ctrl-C?)
You can try "signal SIGINT pass nostop noprint", but I don't think it
will work right on Windows.
--
Daniel Jacobowitz
CodeSourcery
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-20 16:24 ` Daniel Jacobowitz
@ 2007-08-20 19:16 ` Eli Zaretskii
2007-08-20 19:31 ` Daniel Jacobowitz
0 siblings, 1 reply; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-20 19:16 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: Roland.Puntaier, gdb
> Date: Mon, 20 Aug 2007 12:24:39 -0400
> From: Daniel Jacobowitz <drow@false.org>
> Cc: gdb@sourceware.org
>
> Control-C handling on Windows is completely different from on
> POSIX operating systems, because the handler runs in a new thread
> instead of interrupting the main thread of execution. This means
> that GDB's signal handling, which relies on longjmp, does not work.
The way to fix this is to make the signal handler stop the main thread
as the first thing it does. Then you have a Posix-compliant program
again. I did something similar for the MinGW port of GNU Make.
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-20 19:16 ` Eli Zaretskii
@ 2007-08-20 19:31 ` Daniel Jacobowitz
2007-08-21 2:56 ` Christopher Faylor
2007-08-21 3:22 ` Eli Zaretskii
0 siblings, 2 replies; 39+ messages in thread
From: Daniel Jacobowitz @ 2007-08-20 19:31 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: Roland.Puntaier, gdb
On Mon, Aug 20, 2007 at 10:16:12PM +0300, Eli Zaretskii wrote:
> The way to fix this is to make the signal handler stop the main thread
> as the first thing it does. Then you have a Posix-compliant program
> again. I did something similar for the MinGW port of GNU Make.
Is there any way to force the other thread to longjmp? Otherwise,
just stopping it isn't enough - you don't have the right stack.
Erm, maybe it would work anyway... longjmping from one thread to
another scares me a bit, though.
--
Daniel Jacobowitz
CodeSourcery
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-20 19:31 ` Daniel Jacobowitz
@ 2007-08-21 2:56 ` Christopher Faylor
2007-08-21 17:42 ` Jim Blandy
2007-08-22 11:10 ` Roland Puntaier
2007-08-21 3:22 ` Eli Zaretskii
1 sibling, 2 replies; 39+ messages in thread
From: Christopher Faylor @ 2007-08-21 2:56 UTC (permalink / raw)
To: Roland.Puntaier, gdb
On Mon, Aug 20, 2007 at 03:31:28PM -0400, Daniel Jacobowitz wrote:
>On Mon, Aug 20, 2007 at 10:16:12PM +0300, Eli Zaretskii wrote:
>> The way to fix this is to make the signal handler stop the main thread
>> as the first thing it does. Then you have a Posix-compliant program
>> again. I did something similar for the MinGW port of GNU Make.
>
>Is there any way to force the other thread to longjmp? Otherwise,
>just stopping it isn't enough - you don't have the right stack.
>Erm, maybe it would work anyway... longjmping from one thread to
>another scares me a bit, though.
This is why Cygwin's signal handling code is so complicated.
You can stop another thread with a "SuspendThread()" call and you can
cause the thread to resume in another location with a "ResumeThread()"
by changing the EIP that is passed to it. However, if you do that while
you are in the middle of a low-level Windows function which, say, holds
a mutex, then you are going to eventually run into problems.
It's possible that this isn't a big problem for newer NT-based OSes but
it was a show-stopper for the older versions of Windows and older
versions of Windows NT.
Cygwin works around this by not allowing itself to be suspended within a
Cygwin1.dll function and checking for signal redirection at the end of
any Cygwin function which references Windows. If it notices that a
signal came in then, instead of returning, the function will jump to the
appropriate signal handler. If the signal came in while user-level code
was executing then the main thread is suspended and resumed at a new
location which fixes up the stack so that the equivalent of a longjmp
takes place.
You *might* be able to make gdb do something similar to all of this but
it would obviously be a lot of work.
cgf
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-20 19:31 ` Daniel Jacobowitz
2007-08-21 2:56 ` Christopher Faylor
@ 2007-08-21 3:22 ` Eli Zaretskii
1 sibling, 0 replies; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-21 3:22 UTC (permalink / raw)
To: Daniel Jacobowitz; +Cc: Roland.Puntaier, gdb
> Date: Mon, 20 Aug 2007 15:31:28 -0400
> From: Daniel Jacobowitz <drow@false.org>
> Cc: Roland.Puntaier@br-automation.com, gdb@sourceware.org
>
> On Mon, Aug 20, 2007 at 10:16:12PM +0300, Eli Zaretskii wrote:
> > The way to fix this is to make the signal handler stop the main thread
> > as the first thing it does. Then you have a Posix-compliant program
> > again. I did something similar for the MinGW port of GNU Make.
>
> Is there any way to force the other thread to longjmp? Otherwise,
> just stopping it isn't enough - you don't have the right stack.
longjmp should (theoretically) handle this allright. But if not, you
could raise a flag in the signal handler, then resume the main thread
and return, and the main thread could check the flag and longjmp.
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 2:56 ` Christopher Faylor
@ 2007-08-21 17:42 ` Jim Blandy
2007-08-21 19:09 ` Eli Zaretskii
2007-08-21 22:55 ` Christopher Faylor
2007-08-22 11:10 ` Roland Puntaier
1 sibling, 2 replies; 39+ messages in thread
From: Jim Blandy @ 2007-08-21 17:42 UTC (permalink / raw)
To: Roland.Puntaier; +Cc: gdb
Christopher Faylor <cgf-use-the-mailinglist-please@sourceware.org>
writes:
> On Mon, Aug 20, 2007 at 03:31:28PM -0400, Daniel Jacobowitz wrote:
>>On Mon, Aug 20, 2007 at 10:16:12PM +0300, Eli Zaretskii wrote:
>>> The way to fix this is to make the signal handler stop the main thread
>>> as the first thing it does. Then you have a Posix-compliant program
>>> again. I did something similar for the MinGW port of GNU Make.
>>
>>Is there any way to force the other thread to longjmp? Otherwise,
>>just stopping it isn't enough - you don't have the right stack.
>>Erm, maybe it would work anyway... longjmping from one thread to
>>another scares me a bit, though.
>
> This is why Cygwin's signal handling code is so complicated.
>
> You can stop another thread with a "SuspendThread()" call and you can
> cause the thread to resume in another location with a "ResumeThread()"
> by changing the EIP that is passed to it. However, if you do that while
> you are in the middle of a low-level Windows function which, say, holds
> a mutex, then you are going to eventually run into problems.
>
> It's possible that this isn't a big problem for newer NT-based OSes but
> it was a show-stopper for the older versions of Windows and older
> versions of Windows NT.
>
> Cygwin works around this by not allowing itself to be suspended within a
> Cygwin1.dll function and checking for signal redirection at the end of
> any Cygwin function which references Windows. If it notices that a
> signal came in then, instead of returning, the function will jump to the
> appropriate signal handler. If the signal came in while user-level code
> was executing then the main thread is suspended and resumed at a new
> location which fixes up the stack so that the equivalent of a longjmp
> takes place.
>
> You *might* be able to make gdb do something similar to all of this but
> it would obviously be a lot of work.
GDB's quit_flag / immediate_quit / QUIT macro is set up for polling a
flag and handling interrupts at safe points.
The issue at hand here is that we need C-c to interrupt the main
thread as it reads from the remote host. That could be a pipe, a
socket, or a serial port.
Do you know how one can safely interrupt each of these kinds of reads
in Windows?
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 17:42 ` Jim Blandy
@ 2007-08-21 19:09 ` Eli Zaretskii
2007-08-21 23:47 ` Jim Blandy
2007-08-21 22:55 ` Christopher Faylor
1 sibling, 1 reply; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-21 19:09 UTC (permalink / raw)
To: Jim Blandy; +Cc: Roland.Puntaier, gdb
> Cc: gdb@sourceware.org
> From: Jim Blandy <jimb@codesourcery.com>
> Date: Tue, 21 Aug 2007 10:41:57 -0700
>
> The issue at hand here is that we need C-c to interrupt the main
> thread as it reads from the remote host. That could be a pipe, a
> socket, or a serial port.
>
> Do you know how one can safely interrupt each of these kinds of reads
> in Windows?
What do you mean by ``safely interrupt''?
FWIW, I don't think there's such thing on Windows as ``unsafe'' C-c,
since it's not really an interrupt when it gets delivered to the
application.
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 17:42 ` Jim Blandy
2007-08-21 19:09 ` Eli Zaretskii
@ 2007-08-21 22:55 ` Christopher Faylor
1 sibling, 0 replies; 39+ messages in thread
From: Christopher Faylor @ 2007-08-21 22:55 UTC (permalink / raw)
To: Roland.Puntaier, gdb
On Tue, Aug 21, 2007 at 10:41:57AM -0700, Jim Blandy wrote:
>The issue at hand here is that we need C-c to interrupt the main
>thread as it reads from the remote host. That could be a pipe, a
>socket, or a serial port.
>
>Do you know how one can safely interrupt each of these kinds of reads
>in Windows?
You'd need to use overlapped I/O for those situations. If you do that
then you'd have to decide whether you want gdb to work on Windows 9x/Me
or not.
As you may recall this is the reason why I don't want to become to
actively involved in supporting MinGW. I already solved these problems
once in Cygwin. I don't want to solve the problem again in gdb.
cgf
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 19:09 ` Eli Zaretskii
@ 2007-08-21 23:47 ` Jim Blandy
2007-08-22 3:13 ` Eli Zaretskii
0 siblings, 1 reply; 39+ messages in thread
From: Jim Blandy @ 2007-08-21 23:47 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: Roland.Puntaier, gdb
Eli Zaretskii <eliz@gnu.org> writes:
>> Cc: gdb@sourceware.org
>> From: Jim Blandy <jimb@codesourcery.com>
>> Date: Tue, 21 Aug 2007 10:41:57 -0700
>>
>> The issue at hand here is that we need C-c to interrupt the main
>> thread as it reads from the remote host. That could be a pipe, a
>> socket, or a serial port.
>>
>> Do you know how one can safely interrupt each of these kinds of reads
>> in Windows?
>
> What do you mean by ``safely interrupt''?
The main thread is in the midst of a 'read' or 'write' operation. We
want the thread handling the C-c to be able to make the main thread
abandon that operation with a suitable indication of why.
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 23:47 ` Jim Blandy
@ 2007-08-22 3:13 ` Eli Zaretskii
2007-08-22 10:13 ` Dave Korn
0 siblings, 1 reply; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-22 3:13 UTC (permalink / raw)
To: Jim Blandy; +Cc: Roland.Puntaier, gdb
> Cc: Roland.Puntaier@br-automation.com, gdb@sourceware.org
> From: Jim Blandy <jimb@codesourcery.com>
> Date: Tue, 21 Aug 2007 16:46:58 -0700
>
> >> The issue at hand here is that we need C-c to interrupt the main
> >> thread as it reads from the remote host. That could be a pipe, a
> >> socket, or a serial port.
> >>
> >> Do you know how one can safely interrupt each of these kinds of reads
> >> in Windows?
> >
> > What do you mean by ``safely interrupt''?
>
> The main thread is in the midst of a 'read' or 'write' operation. We
> want the thread handling the C-c to be able to make the main thread
> abandon that operation with a suitable indication of why.
Maybe I'm simply unaware of some subtle issues, but I don't know of
any situation where this cannot be done safely. In particular, the
code I wrote for GNU Make works since the release of Make 3.81, and I
have yet to see any problems with interrupting a running Make, or hear
a single complaint or bug report related to C-c.
^ permalink raw reply [flat|nested] 39+ messages in thread
* RE: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 3:13 ` Eli Zaretskii
@ 2007-08-22 10:13 ` Dave Korn
2007-08-22 19:17 ` Eli Zaretskii
0 siblings, 1 reply; 39+ messages in thread
From: Dave Korn @ 2007-08-22 10:13 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Jim Blandy'; +Cc: Roland.Puntaier, gdb
On 22 August 2007 04:13, Eli Zaretskii wrote:
>> Cc: Roland.Puntaier@br-automation.com, gdb@sourceware.org
>> From: Jim Blandy <jimb@codesourcery.com>
>> Date: Tue, 21 Aug 2007 16:46:58 -0700
>>
>>>> The issue at hand here is that we need C-c to interrupt the main
>>>> thread as it reads from the remote host. That could be a pipe, a socket,
>>>> or a serial port.
>>>>
>>>> Do you know how one can safely interrupt each of these kinds of reads
>>>> in Windows?
>>>
>>> What do you mean by ``safely interrupt''?
>>
>> The main thread is in the midst of a 'read' or 'write' operation. We
>> want the thread handling the C-c to be able to make the main thread
>> abandon that operation with a suitable indication of why.
>
> Maybe I'm simply unaware of some subtle issues, but I don't know of
> any situation where this cannot be done safely. In particular, the
> code I wrote for GNU Make works since the release of Make 3.81, and I
> have yet to see any problems with interrupting a running Make, or hear
> a single complaint or bug report related to C-c.
I'd be curious to take a look at that, can you point me at the right part of
the sources?
cheers,
DaveK
--
Can't think of a witty .sigline today....
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-21 2:56 ` Christopher Faylor
2007-08-21 17:42 ` Jim Blandy
@ 2007-08-22 11:10 ` Roland Puntaier
2007-08-22 19:20 ` Eli Zaretskii
1 sibling, 1 reply; 39+ messages in thread
From: Roland Puntaier @ 2007-08-22 11:10 UTC (permalink / raw)
To: gdb
> Christopher Faylor:
> You can stop another thread with a "SuspendThread()" call and you can
> cause the thread to resume in another location with a "ResumeThread()"
> by changing the EIP that is passed to it. However, if you do that while
> you are in the middle of a low-level Windows function which, say, holds
> a mutex, then you are going to eventually run into problems.
I wanted to try this with the following changes in remoted.c,
but I could'nt find a way to get the EIP of the new address, i.e.
"continueHere:".
How could that be done?
#include <windows.h>//Added
static HANDLE h_main_thread = 0;//Added
static void
interrupt_query (void)
{
target_terminal_ours ();
if (query ("Interrupted while waiting for the program.\n\
Give up (and stop debugging it)? "))
{
target_mourn_inferior ();
if (h_main_thread){//Added
CONTEXT threadContext;//Added
SuspendThread(h_main_thread);//Added
GetThreadContext(h_main_thread,&threadContext);//Added
threadContext.Eip = &continueHere;//Added and wished it would work
SetThreadContext(h_main_thread,&threadContext);//Added
ResumeThread(h_main_thread);//Added
ExitThread(0);//Added
}//Added
continueHere://Added and wished it would work
deprecated_throw_reason (RETURN_QUIT);
}
target_terminal_inferior ();
}
...
static ptid_t
remote_wait (ptid_t ptid, struct target_waitstatus *status)
{
...
h_main_thread=GetCurrentThread();//Added
ofunc = signal (SIGINT, remote_interrupt);
getpkt (&rs->buf, &rs->buf_size, 1);
signal (SIGINT, ofunc);
h_main_thread=0;//Added
....
> Christopher Faylor:
> You'd need to use overlapped I/O for those situations. If you do that
> then you'd have to decide whether you want gdb to work on Windows 9x/Me
> or not.
This seems less brute force:
WSARecv(), WSAWaitForMultipleEvents() instead of recv()
and let WSAWaitForMultipleEvents() return through an event signaled in
interrupt_query()
and if that event happened, continue calling deprecated_throw_reason
(RETURN_QUIT); this time from the main thread.
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 10:13 ` Dave Korn
@ 2007-08-22 19:17 ` Eli Zaretskii
2007-08-24 9:19 ` Roland Puntaier
2007-08-24 16:12 ` Roland Puntaier
0 siblings, 2 replies; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-22 19:17 UTC (permalink / raw)
To: Dave Korn; +Cc: jimb, Roland.Puntaier, gdb
> From: "Dave Korn" <dave.korn@artimi.com>
> Cc: <Roland.Puntaier@br-automation.com>,
> <gdb@sourceware.org>
> Date: Wed, 22 Aug 2007 11:12:48 +0100
>
> > Maybe I'm simply unaware of some subtle issues, but I don't know of
> > any situation where this cannot be done safely. In particular, the
> > code I wrote for GNU Make works since the release of Make 3.81, and I
> > have yet to see any problems with interrupting a running Make, or hear
> > a single complaint or bug report related to C-c.
>
> I'd be curious to take a look at that, can you point me at the right part of
> the sources?
Sure.
job.c:reap_children (search for "GetCurrentThread") is where I record
the thread ID of the main thread. command.c:fatal_error_signal is
where the main thread ID is used to stop the main thread as soon as we
enter the signal handler.
Let me know if you find any bugs ;-)
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 11:10 ` Roland Puntaier
@ 2007-08-22 19:20 ` Eli Zaretskii
2007-08-23 2:49 ` 答复: (Rising Spam Alert)Re: " xchen
` (21 more replies)
0 siblings, 22 replies; 39+ messages in thread
From: Eli Zaretskii @ 2007-08-22 19:20 UTC (permalink / raw)
To: Roland Puntaier; +Cc: gdb
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c,
> but I could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then
call longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (19 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
[not found] ` <NUTMEGt3HvoFOAmEaJs0000003d@mail.artimi.com>
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (18 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
[not found] ` <NUTMEGt3HvoFOAmEaJs0000003d@mail.artimi.com>
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (17 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (2 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (4 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (15 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
2007-08-23 2:49 ` 答复: (Rising Spam Alert)Re: " xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (19 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (13 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (6 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (12 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (7 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (15 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (4 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (16 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (3 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (3 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (16 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (2 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (17 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (14 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (5 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (7 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (12 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (5 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (14 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (9 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (10 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
2007-08-23 2:49 ` 答复: (Rising Spam Alert)Re: " xchen
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (18 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (10 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (9 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (11 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (8 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (6 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (13 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
` (8 preceding siblings ...)
2007-08-23 2:49 ` xchen
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (11 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* 答复: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:20 ` Eli Zaretskii
@ 2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
` (20 subsequent siblings)
21 siblings, 0 replies; 39+ messages in thread
From: xchen @ 2007-08-23 2:49 UTC (permalink / raw)
To: 'Eli Zaretskii', 'Roland Puntaier'; +Cc: gdb
Hi
I am sorry to interrupt your talk. I send serveral mails to
gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
can tell me why?
Thx,
Xi
-----邮件原件-----
发件人: gdb-owner@sourceware.org [mailto:gdb-owner@sourceware.org] 代表 Eli
Zaretskii
发送时间: 2007年8月23日 3:20
收件人: Roland Puntaier
抄送: gdb@sourceware.org
主题: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
> From: Roland Puntaier <Roland.Puntaier@br-automation.com>
> Date: Wed, 22 Aug 2007 13:10:07 +0200
>
> I wanted to try this with the following changes in remoted.c, but I
> could'nt find a way to get the EIP of the new address, i.e.
> "continueHere:".
> How could that be done?
One way to do that would be to call setjmp at continueHere, and then call
longjmp to jump there from any other place.
^ permalink raw reply [flat|nested] 39+ messages in thread
* RE: (Rising Spam Alert)Re: gdb-6.6 mingw port hangs after Ctrl-C
[not found] ` <NUTMEGt3HvoFOAmEaJs0000003d@mail.artimi.com>
@ 2007-08-23 9:30 ` Dave Korn
0 siblings, 0 replies; 39+ messages in thread
From: Dave Korn @ 2007-08-23 9:30 UTC (permalink / raw)
To: 'xchen'; +Cc: gdb
On 23 August 2007 03:49, xchen wrote:
> Hi
> I am sorry to interrupt your talk. I send serveral mails to
> gdb@sourceware.org, but I didn't find them in mail list archive. Somebody
> can tell me why?
This one made it through, what did you do differently this time?
Anyway, if your email was rejected by sourceware.org, you should have received
a bounce message telling you why. Check if your spam filter blocked it?
sourceware.org mailing lists reject HTML email and they reject mail with legal
disclaimers at the bottom. Please also see
http://sourceware.org/lists.html#spam
for a way to send your email past sourceware.org's filters ("global-allow" list);
if that still doesn't help, the problem may be at your ISP end.
cheers,
DaveK
--
Can't think of a witty .sigline today....
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:17 ` Eli Zaretskii
@ 2007-08-24 9:19 ` Roland Puntaier
2007-08-24 16:12 ` Roland Puntaier
1 sibling, 0 replies; 39+ messages in thread
From: Roland Puntaier @ 2007-08-24 9:19 UTC (permalink / raw)
To: gdb
Thanks fo the hints.
Here is the kludge I hacked (added/changed lines are marked with
ChCtrlCRemote):
--- gdb-6.6-mingw/gdb/ser-mingw.c Tue Oct 10 16:23:11 2006
+++ ../gdb-6.6-mingw/gdb/ser-mingw.c Fri Aug 24 10:37:07 2007
@@ -886,7 +886,7 @@
while (1)
{
- HANDLE wait_events[2];
+ HANDLE wait_events[3];//ChCtrlCRemote: HANDLE wait_events[2];
WSANETWORKEVENTS events;
SetEvent (state->have_stopped);
@@ -901,8 +901,11 @@
wait_events[0] = state->stop_select;
wait_events[1] = state->sock_event;
+ wait_events[2] = state->exit_select;//ChCtrlCRemote
- event_index = WaitForMultipleObjects (2, wait_events, FALSE,
INFINITE);
+ event_index = WaitForMultipleObjects (3, wait_events, FALSE,
INFINITE);//ChCtrlCRemote: event_index = WaitForMultipleObjects (2,
wait_events, FALSE, INFINITE);
+ if (event_index-WAIT_OBJECT_0==2)//ChCtrlCRemote
+ return 0;//ChCtrlCRemote
if (event_index == WAIT_OBJECT_0
|| WaitForSingleObject (state->stop_select, 0) == WAIT_OBJECT_0)
--- gdb-6.6-mingw/gdb/ser-base.c Fri Feb 10 23:01:43 2006
+++ ../gdb-6.6-mingw/gdb/ser-base.c Fri Aug 24 10:34:16 2007
@@ -178,6 +178,11 @@
reschedule (scb);
}
+extern HANDLE evt_stop_wait;//ChCtrlCRemote
+#include <exceptions.h>//ChCtrlCRemote
+#include <target.h>//ChCtrlCRemote
+#define DATA_BUFSIZE 4096//ChCtrlCRemote
+
/* Wait for input on scb, with timeout seconds. Returns 0 on success,
otherwise SERIAL_TIMEOUT or SERIAL_ERROR. */
@@ -271,6 +276,13 @@
status = SERIAL_TIMEOUT;
break;
}
+
+ if
(WaitForSingleObject(evt_stop_wait,0)==WAIT_OBJECT_0)//ChCtrlCRemote
+ {//ChCtrlCRemote
+ target_mourn_inferior ();//ChCtrlCRemote
+ deprecated_throw_reason (RETURN_QUIT);//ChCtrlCRemote
+ }//ChCtrlCRemote
+
}
if (status < 0)
--- gdb-6.6-mingw/gdb/remote.c Tue Nov 14 22:40:19 2006
+++ ../gdb-6.6-mingw/gdb/remote.c Fri Aug 24 10:32:59 2007
@@ -1975,6 +1975,9 @@
memcpy (offs, symfile_objfile->section_offsets,
SIZEOF_N_SECTION_OFFSETS (symfile_objfile->num_sections));
+ text_addr = text_addr-symfile_objfile->sections[SECT_OFF_TEXT
(symfile_objfile)].addr;/*BUR*/
+ data_addr = data_addr-symfile_objfile->sections[SECT_OFF_DATA
(symfile_objfile)].addr;/*BUR*/
+
offs->offsets[SECT_OFF_TEXT (symfile_objfile)] = text_addr;
/* This is a temporary kludge to force data and bss to use the same
offsets
@@ -2898,6 +2901,8 @@
}
/* Ask the user what to do when an interrupt is received. */
+#include <windows.h>//ChCtrlCRemote
+HANDLE evt_stop_wait=0;//ChCtrlCRemote
static void
interrupt_query (void)
@@ -2907,6 +2912,8 @@
if (query ("Interrupted while waiting for the program.\n\
Give up (and stop debugging it)? "))
{
+ SetEvent(evt_stop_wait);//ChCtrlCRemote
+ return;//ChCtrlCRemote
target_mourn_inferior ();
deprecated_throw_reason (RETURN_QUIT);
}
@@ -6144,6 +6151,8 @@
void
_initialize_remote (void)
{
+ evt_stop_wait=CreateEvent(NULL,FALSE,FALSE,NULL);//ChCtrlCRemote
+
struct remote_state *rs;
/* architecture specific data */
^ permalink raw reply [flat|nested] 39+ messages in thread
* Re: gdb-6.6 mingw port hangs after Ctrl-C
2007-08-22 19:17 ` Eli Zaretskii
2007-08-24 9:19 ` Roland Puntaier
@ 2007-08-24 16:12 ` Roland Puntaier
1 sibling, 0 replies; 39+ messages in thread
From: Roland Puntaier @ 2007-08-24 16:12 UTC (permalink / raw)
To: gdb
Thanks fo the hints.
Here is the kludge I hacked (added/changed lines are marked with
ChCtrlCRemote):
--- gdb-6.6-mingw/gdb/ser-mingw.c Tue Oct 10 16:23:11 2006
+++ ../gdb-6.6-mingw/gdb/ser-mingw.c Fri Aug 24 10:37:07 2007
@@ -886,7 +886,7 @@
while (1)
{
- HANDLE wait_events[2];
+ HANDLE wait_events[3];//ChCtrlCRemote: HANDLE wait_events[2];
WSANETWORKEVENTS events;
SetEvent (state->have_stopped);
@@ -901,8 +901,11 @@
wait_events[0] = state->stop_select;
wait_events[1] = state->sock_event;
+ wait_events[2] = state->exit_select;//ChCtrlCRemote
- event_index = WaitForMultipleObjects (2, wait_events, FALSE,
INFINITE);
+ event_index = WaitForMultipleObjects (3, wait_events, FALSE,
INFINITE);//ChCtrlCRemote: event_index = WaitForMultipleObjects (2,
wait_events, FALSE, INFINITE);
+ if (event_index-WAIT_OBJECT_0==2)//ChCtrlCRemote
+ return 0;//ChCtrlCRemote
if (event_index == WAIT_OBJECT_0
|| WaitForSingleObject (state->stop_select, 0) == WAIT_OBJECT_0)
--- gdb-6.6-mingw/gdb/ser-base.c Fri Feb 10 23:01:43 2006
+++ ../gdb-6.6-mingw/gdb/ser-base.c Fri Aug 24 10:34:16 2007
@@ -178,6 +178,11 @@
reschedule (scb);
}
+extern HANDLE evt_stop_wait;//ChCtrlCRemote
+#include <exceptions.h>//ChCtrlCRemote
+#include <target.h>//ChCtrlCRemote
+#define DATA_BUFSIZE 4096//ChCtrlCRemote
+
/* Wait for input on scb, with timeout seconds. Returns 0 on success,
otherwise SERIAL_TIMEOUT or SERIAL_ERROR. */
@@ -271,6 +276,13 @@
status = SERIAL_TIMEOUT;
break;
}
+
+ if
(WaitForSingleObject(evt_stop_wait,0)==WAIT_OBJECT_0)//ChCtrlCRemote
+ {//ChCtrlCRemote
+ target_mourn_inferior ();//ChCtrlCRemote
+ deprecated_throw_reason (RETURN_QUIT);//ChCtrlCRemote
+ }//ChCtrlCRemote
+
}
if (status < 0)
--- gdb-6.6-mingw/gdb/remote.c Tue Nov 14 22:40:19 2006
+++ ../gdb-6.6-mingw/gdb/remote.c Fri Aug 24 10:32:59 2007
/* Ask the user what to do when an interrupt is received. */
+#include <windows.h>//ChCtrlCRemote
+HANDLE evt_stop_wait=0;//ChCtrlCRemote
static void
interrupt_query (void)
@@ -2907,6 +2912,8 @@
if (query ("Interrupted while waiting for the program.\n\
Give up (and stop debugging it)? "))
{
+ SetEvent(evt_stop_wait);//ChCtrlCRemote
+ return;//ChCtrlCRemote
target_mourn_inferior ();
deprecated_throw_reason (RETURN_QUIT);
}
@@ -6144,6 +6151,8 @@
void
_initialize_remote (void)
{
+ evt_stop_wait=CreateEvent(NULL,FALSE,FALSE,NULL);//ChCtrlCRemote
+
struct remote_state *rs;
/* architecture specific data */
^ permalink raw reply [flat|nested] 39+ messages in thread
end of thread, other threads:[~2007-08-24 16:12 UTC | newest]
Thread overview: 39+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-08-20 16:20 gdb-6.6 mingw port hangs after Ctrl-C Roland Puntaier
2007-08-20 16:24 ` Daniel Jacobowitz
2007-08-20 19:16 ` Eli Zaretskii
2007-08-20 19:31 ` Daniel Jacobowitz
2007-08-21 2:56 ` Christopher Faylor
2007-08-21 17:42 ` Jim Blandy
2007-08-21 19:09 ` Eli Zaretskii
2007-08-21 23:47 ` Jim Blandy
2007-08-22 3:13 ` Eli Zaretskii
2007-08-22 10:13 ` Dave Korn
2007-08-22 19:17 ` Eli Zaretskii
2007-08-24 9:19 ` Roland Puntaier
2007-08-24 16:12 ` Roland Puntaier
2007-08-21 22:55 ` Christopher Faylor
2007-08-22 11:10 ` Roland Puntaier
2007-08-22 19:20 ` Eli Zaretskii
2007-08-23 2:49 ` 答复: (Rising Spam Alert)Re: " xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
2007-08-23 2:49 ` xchen
[not found] ` <NUTMEGt3HvoFOAmEaJs0000003d@mail.artimi.com>
2007-08-23 9:30 ` Dave Korn
2007-08-21 3:22 ` Eli Zaretskii
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox