RFC: Do not call write_pc for "signal SIGINT"
Michael Snyder
msnyder@vmware.com
Thu Aug 28 18:13:00 GMT 2008
Daniel Jacobowitz wrote:
> This FIXME has been there since the dawn of CVS. Removing it causes
> no testsuite regressions on x86_64-linux; I don't think it will on
> other platforms either.
>
> Any comments on this patch? Otherwise I'll check it in after a little
> while.
Hmmm, kind of opaque. Your new code seems like the right
thing to do, but I don't understand the code that you're replacing.
Isn't -1 supposed to mean the same as stop_pc?
And isn't signal 0 equivalent to no signal?
> This isn't the only place where Linux's internal errno codes can leak
> back into user programs because of how we fiddle orig_eax. I'll file
> another bug report about that.
Now you've really lost me. What have errno codes
got to do with this?
> 2008-08-28 Daniel Jacobowitz <dan@codesourcery.com>
>
> PR gdb/2241
> * infcmd.c (signal_command): Do not specify a resume PC.
>
> Index: infcmd.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/infcmd.c,v
> retrieving revision 1.200
> diff -u -p -r1.200 infcmd.c
> --- infcmd.c 21 Aug 2008 20:13:08 -0000 1.200
> +++ infcmd.c 28 Aug 2008 15:51:15 -0000
> @@ -1123,11 +1123,7 @@ signal_command (char *signum_exp, int fr
> }
>
> clear_proceed_status ();
> - /* "signal 0" should not get stuck if we are stopped at a breakpoint.
> - FIXME: Neither should "signal foo" but when I tried passing
> - (CORE_ADDR)-1 unconditionally I got a testsuite failure which I haven't
> - tried to track down yet. */
> - proceed (oursig == TARGET_SIGNAL_0 ? (CORE_ADDR) -1 : stop_pc, oursig, 0);
> + proceed ((CORE_ADDR) -1, oursig, 0);
> }
>
> /* Proceed until we reach a different source line with pc greater than
More information about the Gdb-patches
mailing list