This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: Fun with LD_PRELOAD
- From: Pedro Alves <palves at redhat dot com>
- To: Doug Evans <xdje42 at gmail dot com>
- Cc: Ludovic Courtès <ludo at gnu dot org>, "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>, saugustine at google dot com
- Date: Wed, 05 Feb 2014 19:11:51 +0000
- Subject: Re: Fun with LD_PRELOAD
- Authentication-results: sourceware.org; auth=none
- References: <CAP9bCMRsRrqEYG+7jS-m2EOhByAB+9hTFUuikoNJeJpxGATu5Q at mail dot gmail dot com> <8761ovp1hw dot fsf at gnu dot org> <CAP9bCMSbPVysubZuXvxNCYcMQAu=kvRm5Q7BpzicbsKJ_ESh_A at mail dot gmail dot com>
(removed guile)
As we're talking about it,
On 02/05/2014 06:21 PM, Doug Evans wrote:
> For example, a colleague at Google tripped over a bug that requires a
> specific timing to replicate. I don't have all the details at hand,
> but I think I'm hitting the same assert.
>
> infrun.c:1948: internal-error: resume: Assertion
> `pc_in_thread_step_range (pc, tp)' failed.
>
> AIUI, It happens, for example, when the user does a "next", and a
> signal arrives on another thread while the thread being next'd has
> stepped into a subroutine (thus requiring gdb to step out to implement
> the semantics of "next"). I now have a simple repro (at least for the
> assert I'm seeing), and it was very straightforward to write. It
> involves tracking the PTRACE_SINGLESTEP being issued to one thread
> (that implement "next") and at the right time send a signal to another
> thread.
perhaps you could check whether the patch at
https://sourceware.org/ml/gdb-patches/2014-01/msg00910.html
also fixes your reproducer?
--
Pedro Alves