[PATCH] Fix stop-on-solib event failures

Alan Hayward Alan.Hayward@arm.com
Fri Aug 16 12:16:00 GMT 2019



> On 15 Aug 2019, at 15:55, Tom Tromey <tom@tromey.com> wrote:
> 
>>>>>> "Alan" == Alan Hayward <Alan.Hayward@arm.com> writes:
> 
> Alan> [ This patch replaces "[PATCH] testsuite: disable break-interp.exp for Arm
> Alan>   buildbot". Instead of working around the issue, this fixes the issues. ]
> 
> Alan> On some Arm targets (namely the buildbot Arm Docker setup) placing breakpoints
> Alan> on just the solib dynamic probes will cause the target process to not stop.
> Alan> For stop-on-solib to work, a breakpoint also needs placing at the original
> Alan> stop address.  This is due to bad placing of the probe addresses in the
> Alan> linker.
> 
> My understanding is that the probe code is intended to be more efficient
> than the old code.  Won't always installing the old-style breakpoint
> eliminate the efficiency gain?
> 

Right, ok, if that’s the case then yes I agree this patch isn’t right - we shouldn’t
be avoiding the optimisation to support broken probes.


> If the probes don't work properly on ARM, is there some way to detect that?
> Why don't they work?

I’ll investigate a little more to see if I can figure out why it’s wrong, and if we
can detect it.
I could add a UI command to toggle off the optimisation? Not sure I like that.

Failing all that I could go back to the previous "disable break-interp.exp for Arm”
patch.

> 
> Alan> In addition, the gdb.base/break-interp.exp test has a extra step that is only
> Alan> required for ppc64 targets.  However on Ubuntu X86 and AArch64, this causes
> Alan> the program to now be stopped in an unknown location.  The fix here is to
> Alan> ensure the ppc64 step is only run on ppc64 targets.  This fixes a long
> Alan> standing issue.
> 
> This part seems fine.

I’ll push this part.


> 
> Tom



More information about the Gdb-patches mailing list