[8.3 backport] Adjust i386 registers on SystemTap probes' arguments (PR breakpoints/24541)

Tom de Vries tdevries@suse.de
Wed Aug 21 09:11:00 GMT 2019


[ was: Re: Updates on GDB 8.3.1 and GDB 9 releases (2019-07-14) ]

On 12-08-19 23:44, Sergio Durigan Junior wrote:
> On Tuesday, July 16 2019, Tom de Vries wrote:

>> The stap-probe.exp fix looks like 7d7571f0c1 "Adjust i386 registers on
>> SystemTap probes' arguments (PR breakpoints/24541)".
>>
>> If bisected the base/info-shared.exp fix to the same commit (which I did
>> not expect).
> 
> This is because GDB uses SystemTap probes behind the scenes to deal with
> the linker-debugger interface.  I don't have the logs here, but I'd
> guess there's something nasty going on because of the -m32 stap bug...
> 
>> So I wonder if this commit is a good candidate to backport.
> 
> I'd say so.  The commit is simple enough, hasn't caused any regressions
> so far, and fixes a decent number of failures on -m32.

The patch does not apply cleanly on gdb-8.3-branch, but it does if I
first apply commit 677052f2a5 (Make
stap-probe.c:stap_parse_register_operand's "regname" an std::string).

I've tested the two commits on top of gdb-8.3-branch for x86_64-linux
with unix/-m32 target board.

No regression, and these progressions:
...
-FAIL: gdb.base/catch-load.exp: plain unload: continue
+PASS: gdb.base/catch-load.exp: plain unload: continue
-FAIL: gdb.base/catch-load.exp: rx unload: continue
+PASS: gdb.base/catch-load.exp: rx unload: continue
-FAIL: gdb.base/info-shared.exp: info sharedlibrary #7
+PASS: gdb.base/info-shared.exp: info sharedlibrary #7
-FAIL: gdb.base/info-shared.exp: info sharedlibrary #8
+PASS: gdb.base/info-shared.exp: info sharedlibrary #8
-FAIL: gdb.base/stap-probe.exp: without semaphore, not optimized: check
$_probe_arg1 for probe m4
+PASS: gdb.base/stap-probe.exp: without semaphore, not optimized: check
$_probe_arg1 for probe m4
-FAIL: gdb.base/stap-probe.exp: with semaphore, not optimized: check
$_probe_arg1 for probe m4
+PASS: gdb.base/stap-probe.exp: with semaphore, not optimized: check
$_probe_arg1 for probe m4
-FAIL: gdb.base/stap-probe.exp: without semaphore, optimized: check
$_probe_arg1 for probe m4
+PASS: gdb.base/stap-probe.exp: without semaphore, optimized: check
$_probe_arg1 for probe m4
-FAIL: gdb.base/stap-probe.exp: without semaphore, optimized: print
$_probe_arg1 for probe ps
+PASS: gdb.base/stap-probe.exp: without semaphore, optimized: print
$_probe_arg1 for probe ps
-FAIL: gdb.base/stap-probe.exp: with semaphore, optimized: check
$_probe_arg1 for probe m4
+PASS: gdb.base/stap-probe.exp: with semaphore, optimized: check
$_probe_arg1 for probe m4
-FAIL: gdb.base/stap-probe.exp: with semaphore, optimized: print
$_probe_arg1 for probe ps
+PASS: gdb.base/stap-probe.exp: with semaphore, optimized: print
$_probe_arg1 for probe ps
-FAIL: gdb.base/unload.exp: continuing to unloaded libfile
+PASS: gdb.base/unload.exp: continuing to unloaded libfile
-FAIL: gdb.base/unload.exp: continuing to unloaded libfile
+PASS: gdb.base/unload.exp: continuing to unloaded libfile
-FAIL: gdb.base/unload.exp: continuing to unloaded libfile2
+PASS: gdb.base/unload.exp: continuing to unloaded libfile2
-FAIL: gdb.mi/mi-breakpoint-changed.exp: test_pending_resolved: pending
resolved: breakpoint on pendfunc3 pending again
-FAIL: gdb.mi/mi-breakpoint-changed.exp: test_pending_resolved: pending
resolved: (timeout)
+PASS: gdb.mi/mi-breakpoint-changed.exp: test_pending_resolved: pending
resolved: breakpoint on pendfunc3 pending again
+PASS: gdb.mi/mi-breakpoint-changed.exp: test_pending_resolved: pending
resolved:
-FAIL: gdb.mi/mi-catch-load.exp: catch-unload: solib-event stop
+PASS: gdb.mi/mi-catch-load.exp: catch-unload: solib-event stop
-# of expected passes           65957
-# of unexpected failures       235
+# of expected passes           65973
+# of unexpected failures       219
...

OK to backport both commits to gdb-8.3-branch?

Thanks,
- Tom



More information about the Gdb-patches mailing list