Mirror of the gdb mailing list
 help / color / mirror / Atom feed
* infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
@ 2004-10-29 19:32 Andreas Schwab
  2004-10-30 14:54 ` Andrew Cagney
  2004-10-30 17:27 ` infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed dot Mark Kettenis
  0 siblings, 2 replies; 11+ messages in thread
From: Andreas Schwab @ 2004-10-29 19:32 UTC (permalink / raw)
  To: gdb

I'm getting this assertion failure on ia64-linux when stepping after a
breakpoint with a signal also being delivered.  Both calls to
insert_step_resume_breakpoint_at_sal are coming from the two calls to
insert_step_resume_breakpoint_at_frame in handle_inferior_event.  In both
calls the actual address where the breakpoint is to be set is the same.  I
haven't been able to come up with a small test case, this happens while
debugging Emacs.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-10-29 19:32 infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed Andreas Schwab
@ 2004-10-30 14:54 ` Andrew Cagney
  2004-10-30 17:47   ` Andreas Schwab
  2004-10-30 17:27 ` infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed dot Mark Kettenis
  1 sibling, 1 reply; 11+ messages in thread
From: Andrew Cagney @ 2004-10-30 14:54 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: gdb

Andreas Schwab wrote:
> I'm getting this assertion failure on ia64-linux when stepping after a
> breakpoint with a signal also being delivered.  Both calls to
> insert_step_resume_breakpoint_at_sal are coming from the two calls to
> insert_step_resume_breakpoint_at_frame in handle_inferior_event.  In both
> calls the actual address where the breakpoint is to be set is the same.  I
> haven't been able to come up with a small test case, this happens while
> debugging Emacs.

The sig* tests check this edge case.

For the other architectures I investigated, it was tracked down to 
kernel bugs.  For instance, ptrace(STEP,SIGNAL) was implemented as 
ptrace(CONT,SIGNAL).  Suggest looking upstream, we've (Red Hat) have 
been pushing fixes for other key architectures ;-)

Andrew


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed dot
  2004-10-29 19:32 infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed Andreas Schwab
  2004-10-30 14:54 ` Andrew Cagney
@ 2004-10-30 17:27 ` Mark Kettenis
  1 sibling, 0 replies; 11+ messages in thread
From: Mark Kettenis @ 2004-10-30 17:27 UTC (permalink / raw)
  To: schwab; +Cc: gdb

   From: Andreas Schwab <schwab@suse.de>
   Date: Fri, 29 Oct 2004 17:22:57 +0200

   I'm getting this assertion failure on ia64-linux when stepping after a
   breakpoint with a signal also being delivered.  Both calls to
   insert_step_resume_breakpoint_at_sal are coming from the two calls to
   insert_step_resume_breakpoint_at_frame in handle_inferior_event.  In both
   calls the actual address where the breakpoint is to be set is the same.  I
   haven't been able to come up with a small test case, this happens while
   debugging Emacs.

I'm seeing the same problem on NetBSD/amd64 in the regular testsuite
(sigstep.exp).  Haven't found the time yet to look into it though.

Mark


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-10-30 14:54 ` Andrew Cagney
@ 2004-10-30 17:47   ` Andreas Schwab
  2004-10-30 19:48     ` Andrew Cagney
  0 siblings, 1 reply; 11+ messages in thread
From: Andreas Schwab @ 2004-10-30 17:47 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: gdb

Andrew Cagney <ac131313@redhat.com> writes:

> Andreas Schwab wrote:
>> I'm getting this assertion failure on ia64-linux when stepping after a
>> breakpoint with a signal also being delivered.  Both calls to
>> insert_step_resume_breakpoint_at_sal are coming from the two calls to
>> insert_step_resume_breakpoint_at_frame in handle_inferior_event.  In both
>> calls the actual address where the breakpoint is to be set is the same.  I
>> haven't been able to come up with a small test case, this happens while
>> debugging Emacs.
>
> The sig* tests check this edge case.

Not this one.  There are only two failures, which are
"gdb.base/sigstep.exp: finish from handleri; leave handler (timeout)" and
"gdb.base/sigstep.exp: finish from handleri; leave signal trampoline", and
neither are not due to internal errors.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-10-30 17:47   ` Andreas Schwab
@ 2004-10-30 19:48     ` Andrew Cagney
  2004-10-31 16:18       ` Andreas Schwab
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Cagney @ 2004-10-30 19:48 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Andrew Cagney, gdb

Andreas Schwab wrote:
> Andrew Cagney <ac131313@redhat.com> writes:
> 
> 
>>Andreas Schwab wrote:
>>
>>>I'm getting this assertion failure on ia64-linux when stepping after a
>>>breakpoint with a signal also being delivered.  Both calls to
>>>insert_step_resume_breakpoint_at_sal are coming from the two calls to
>>>insert_step_resume_breakpoint_at_frame in handle_inferior_event.  In both
>>>calls the actual address where the breakpoint is to be set is the same.  I
>>>haven't been able to come up with a small test case, this happens while
>>>debugging Emacs.
>>
>>The sig* tests check this edge case.
> 
> 
> Not this one.  There are only two failures, which are
> "gdb.base/sigstep.exp: finish from handleri; leave handler (timeout)" and
> "gdb.base/sigstep.exp: finish from handleri; leave signal trampoline", and
> neither are not due to internal errors.

The "step on breakpoint; ..." tests, based on your description, exercise 
just that senario.  They run to a breakpoint, wait for a signal to be 
come pending, and then try to step et.al.

Sounds like more is going on?

Andrew

Ref 1757, 1738


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-10-30 19:48     ` Andrew Cagney
@ 2004-10-31 16:18       ` Andreas Schwab
  2004-10-31 19:12         ` Andrew Cagney
  0 siblings, 1 reply; 11+ messages in thread
From: Andreas Schwab @ 2004-10-31 16:18 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: Andrew Cagney, gdb

Andrew Cagney <cagney@gnu.org> writes:

> The "step on breakpoint; ..." tests,

I can't find any such test in gdb.base.

> based on your description, exercise just that senario.  They run to a
> breakpoint, wait for a signal to be come pending, and then try to step
> et.al.
>
> Sounds like more is going on?

Perhaps the key point is that the signal (SIGIO) is silently passed to the
inferiour by gdb.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-10-31 16:18       ` Andreas Schwab
@ 2004-10-31 19:12         ` Andrew Cagney
       [not found]           ` <je8y9okn2b.fsf@sykes.suse.de>
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Cagney @ 2004-10-31 19:12 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Andrew Cagney, gdb

Andreas Schwab wrote:
> Andrew Cagney <cagney@gnu.org> writes:
> 
> 
>>The "step on breakpoint; ..." tests,
> 
> 
> I can't find any such test in gdb.base.

sigstep.exp:breakpoint_over_handler, added 25/8.  The above should be in 
your gdb.log.  What's your GDB version?

>>based on your description, exercise just that senario.  They run to a
>>breakpoint, wait for a signal to be come pending, and then try to step
>>et.al.
>>
>>Sounds like more is going on?
> 
> 
> Perhaps the key point is that the signal (SIGIO) is silently passed to the
> inferiour by gdb.

No, the above does that (but with SIGALRM).  Are there multiple signals 
pending?

Andrew


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
       [not found]           ` <je8y9okn2b.fsf@sykes.suse.de>
@ 2004-11-01 18:05             ` Andrew Cagney
  2004-11-02 15:25               ` Andreas Schwab
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Cagney @ 2004-11-01 18:05 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Andrew Cagney, gdb


>>No, the above does that (but with SIGALRM).  Are there multiple signals
>>pending?
> 
> 
> Doesn't seem so.

Time to post (gdb) set debug target 1 ; run.

Andrew


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-11-01 18:05             ` Andrew Cagney
@ 2004-11-02 15:25               ` Andreas Schwab
  2005-01-26 21:10                 ` Andrew Cagney
  0 siblings, 1 reply; 11+ messages in thread
From: Andreas Schwab @ 2004-11-02 15:25 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: Andrew Cagney, gdb

[-- Attachment #1: Type: text/plain, Size: 447 bytes --]

Andrew Cagney <ac131313@redhat.com> writes:

>>>No, the above does that (but with SIGALRM).  Are there multiple signals
>>>pending?
>> Doesn't seem so.
>
> Time to post (gdb) set debug target 1 ; run.

It's attached.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux AG, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."

[-- Attachment #2: GDB debug dump --]
[-- Type: application/x-bzip2, Size: 28425 bytes --]

^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2004-11-02 15:25               ` Andreas Schwab
@ 2005-01-26 21:10                 ` Andrew Cagney
  2005-01-27 15:25                   ` Andreas Schwab
  0 siblings, 1 reply; 11+ messages in thread
From: Andrew Cagney @ 2005-01-26 21:10 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Andrew Cagney, gdb, Nick Roberts

Andreas Schwab wrote:
> Andrew Cagney <ac131313@redhat.com> writes:
> 
> 
>>>>No, the above does that (but with SIGALRM).  Are there multiple signals
>>>>pending?
>>>
>>>Doesn't seem so.
>>
>>Time to post (gdb) set debug target 1 ; run.
> 
> 
> It's attached.
> 
> Andreas.

Andreas,

I've fixed one bug related to back-to-back signals that would cause this 
internal error (testsuite gdb.base/sigrepeat.exp).  Can you re-run your 
senario?  Nick, who encountered similar problems, found his problem 
moved :-/

Andrew


^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed.
  2005-01-26 21:10                 ` Andrew Cagney
@ 2005-01-27 15:25                   ` Andreas Schwab
  0 siblings, 0 replies; 11+ messages in thread
From: Andreas Schwab @ 2005-01-27 15:25 UTC (permalink / raw)
  To: Andrew Cagney; +Cc: Andrew Cagney, gdb, Nick Roberts

Andrew Cagney <cagney@gnu.org> writes:

> I've fixed one bug related to back-to-back signals that would cause this
> internal error (testsuite gdb.base/sigrepeat.exp).  Can you re-run your
> senario?

Seems to work now.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2005-01-27 15:25 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-10-29 19:32 infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed Andreas Schwab
2004-10-30 14:54 ` Andrew Cagney
2004-10-30 17:47   ` Andreas Schwab
2004-10-30 19:48     ` Andrew Cagney
2004-10-31 16:18       ` Andreas Schwab
2004-10-31 19:12         ` Andrew Cagney
     [not found]           ` <je8y9okn2b.fsf@sykes.suse.de>
2004-11-01 18:05             ` Andrew Cagney
2004-11-02 15:25               ` Andreas Schwab
2005-01-26 21:10                 ` Andrew Cagney
2005-01-27 15:25                   ` Andreas Schwab
2004-10-30 17:27 ` infrun.c:2642: internal-error: insert_step_resume_breakpoint_at_sal: Assertion `step_resume_breakpoint == NULL' failed dot Mark Kettenis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox