Files
gdb/gdb-dlopen-stap-probe-test2.patch
Stephan Kulow 16b5661a6f Accepting request 147743 from devel:gcc
- Merge from gdb-7.5.1-30.fc18.src.rpm.
  7.5.1 gives:
    * An "Attempt to dereference a generic pointer" errors (-var-create).
    * Backtrace problems on x32 (PR backtrace/14646).
    * next/step/finish problems on x32 (PR gdb/14647).
    * A "malformed linespec error: unexpected keyword, [...]" error
      (PR breakpoints/14643).
    * GDB crash while stepping through powerpc (32bits) code.
    * A failed assertion in linux_ptrace_test_ret_to_nx.
    * A "!frame_id_inlined_p (frame_id)" failed assertion.
    * A "No more reverse-execution history." error during reverse
      "next" execution (PR 14548).
    * Incomplete command descriptions in "apropos" output.
    * PR gdb/14494 (a GDB crash difficult to characterize).
  7.5 gives:
    * Go language support.
    * New targets (x32 ABI, microMIPS, Renesas RL78, HP OpenVMS ia64).
    * More Python scripting improvements.
    * SDT (Static Defined Tracing) probes support with SystemTap probes.
    * GDBserver improvements (stdio connections, target-side evaluation
      of breakpoint conditions, remote protocol improvements).
    * Other miscellaneous improvements (ability to stop when a shared
      library is loaded/unloaded, dynamic printf, etc).
    * Reverse debugging on ARM.

- Do not provide a custom (safe) auto-load dir.

OBS-URL: https://build.opensuse.org/request/show/147743
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gdb?expand=0&rev=90
2013-01-11 14:55:20 +00:00

70 lines
2.1 KiB
Diff

http://sourceware.org/ml/gdb-patches/2012-08/msg00500.html
Subject: [patch] testsuite: Make solib-corrupted.exp untested for probes [Re: [RFA 0/4 take 2] Improved linker-debugger interface]
On Fri, 17 Aug 2012 22:53:53 +0200, Jan Kratochvil wrote:
> It regresses with glibc-debuginfo installed:
>
> info sharedlibrary^M
> From To Syms Read Shared Object Library^M
> 0x00007ffff7ddcb20 0x00007ffff7df63d9 Yes /lib64/ld-linux-x86-64.so.2^M
> 0x00007ffff7ae05b0 0x00007ffff7b4ad78 Yes /lib64/libm.so.6^M
> 0x00007ffff77431a0 0x00007ffff7883cf0 Yes /lib64/libc.so.6^M
> (gdb) FAIL: gdb.base/solib-corrupted.exp: corrupted list
>
> But I guess there is no longer a way to test it with probes so it should just
> run some 'info probes' and make this test UNTESTED if rtld probes are
> available.
I had to implement it for Fedora already anyway.
Regards,
Jan
gdb/testsuite/
2012-08-18 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.base/solib-corrupted.exp: New variable probes.
(info probes): New test.
diff --git a/gdb/testsuite/gdb.base/solib-corrupted.exp b/gdb/testsuite/gdb.base/solib-corrupted.exp
index 84b3b0c..c9f55d6 100644
--- a/gdb/testsuite/gdb.base/solib-corrupted.exp
+++ b/gdb/testsuite/gdb.base/solib-corrupted.exp
@@ -36,6 +36,33 @@ if ![runto_main] {
return
}
+# With probes interface GDB no longer scans the inferior library list so its
+# corruption cannot be tested. There is no way to disable the probes
+# interface.
+
+set probes { init_start init_complete map_start reloc_complete unmap_start
+ unmap_complete }
+set test "info probes"
+gdb_test_multiple $test $test {
+ -re "^rtld\[ \t\]+(?:rtld_)?(\[a-z_\]+)\[ \t\]" {
+ set idx [lsearch -exact $probes $expect_out(1,string)]
+ if { $idx >= 0 } {
+ set probes [lreplace $probes $idx $idx]
+ }
+ exp_continue
+ }
+ -re "^\[^\r\n\]*\r\n" {
+ exp_continue
+ }
+ -re "^$gdb_prompt $" {
+ }
+}
+if { [llength $probes] == 0 } {
+ xfail $test
+ untested "GDB is using probes"
+ return
+}
+
gdb_test "info sharedlibrary" "From * To .*" "normal list"
# GDB checks there for matching L_PREV.