[testsuite] Fix several false FAILs.
This commit is contained in:
parent
bd0820fa32
commit
dd7d988932
@ -35,9 +35,9 @@ Index: gdb-6.8.50.20090909/gdb/testsuite/gdb.dwarf2/dw2-loclist-prelinked.exp
|
|||||||
+
|
+
|
||||||
+set testfile "dw2-loclist-prelinked"
|
+set testfile "dw2-loclist-prelinked"
|
||||||
+set srcfuncfile ${testfile}-func.S
|
+set srcfuncfile ${testfile}-func.S
|
||||||
+set binsharedfuncfile ${objdir}/${subdir}/${testfile}.so
|
+set binsharedfuncfile [standard_output_file ${testfile}.so]
|
||||||
+set srcmainfile ${testfile}-main.c
|
+set srcmainfile ${testfile}-main.c
|
||||||
+set binfile ${objdir}/${subdir}/${testfile}
|
+set binfile [standard_output_file ${testfile}]
|
||||||
+
|
+
|
||||||
+remote_exec build "rm -f ${binfile}"
|
+remote_exec build "rm -f ${binfile}"
|
||||||
+
|
+
|
||||||
|
68
gdb-testsuite-dw2-undefined-ret-addr.patch
Normal file
68
gdb-testsuite-dw2-undefined-ret-addr.patch
Normal file
@ -0,0 +1,68 @@
|
|||||||
|
http://sourceware.org/ml/gdb-patches/2016-04/msg00181.html
|
||||||
|
Subject: [testsuite patch] Fix 7.11 regression: gdb.dwarf2/dw2-undefined-ret-addr.exp [now with the patch]
|
||||||
|
|
||||||
|
|
||||||
|
--oyUTqETQ0mS9luUI
|
||||||
|
Content-Type: text/plain; charset=us-ascii
|
||||||
|
Content-Disposition: inline
|
||||||
|
|
||||||
|
Hi,
|
||||||
|
|
||||||
|
a038fa3e14a477d4d72a26c2e139fa47d2774be2 is the first bad commit
|
||||||
|
commit a038fa3e14a477d4d72a26c2e139fa47d2774be2
|
||||||
|
Author: Markus Metzger <markus.t.metzger@intel.com>
|
||||||
|
stack: check frame_unwind_caller_id
|
||||||
|
[PATCH v3 2/3] stack: check frame_unwind_caller_id
|
||||||
|
https://sourceware.org/ml/gdb-patches/2016-02/msg00363.html
|
||||||
|
Message-Id: <1455207283-12660-2-git-send-email-markus.t.metzger@intel.com>
|
||||||
|
|
||||||
|
(gdb) PASS: gdb.dwarf2/dw2-undefined-ret-addr.exp: up refuses to go up
|
||||||
|
info frame
|
||||||
|
Stack level 0, frame at 0x0:
|
||||||
|
- rip = 0x40059a in stop_frame (dw2-undefined-ret-addr.c:22); saved rip = <not saved>
|
||||||
|
+ rip = 0x40059a in stop_frame (dw2-undefined-ret-addr.c:22); saved rip = <unavailable>
|
||||||
|
Outermost frame: outermost
|
||||||
|
source language c.
|
||||||
|
Arglist at 0x7fffffffd610, args:
|
||||||
|
Locals at 0x7fffffffd610, Previous frame's sp is 0x7fffffffd620
|
||||||
|
Saved registers:
|
||||||
|
rbp at 0x7fffffffd610
|
||||||
|
-(gdb) PASS: gdb.dwarf2/dw2-undefined-ret-addr.exp: info frame
|
||||||
|
+(gdb) FAIL: gdb.dwarf2/dw2-undefined-ret-addr.exp: info frame
|
||||||
|
|
||||||
|
It happens on normal native Fedora 23 x86_64.
|
||||||
|
|
||||||
|
I am not completely sure about the reasons but it looks to me GDB behavior has
|
||||||
|
just changed.
|
||||||
|
|
||||||
|
OK for check-in?
|
||||||
|
|
||||||
|
|
||||||
|
Thanks,
|
||||||
|
Jan
|
||||||
|
|
||||||
|
--oyUTqETQ0mS9luUI
|
||||||
|
Content-Type: text/plain; charset=us-ascii
|
||||||
|
Content-Disposition: inline; filename=1
|
||||||
|
|
||||||
|
gdb/testsuite/ChangeLog
|
||||||
|
2016-04-08 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
* gdb.dwarf2/dw2-undefined-ret-addr.exp: Expect <unavailable>.
|
||||||
|
|
||||||
|
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.exp b/gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.exp
|
||||||
|
index c666584..e43054b 100644
|
||||||
|
--- a/gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.exp
|
||||||
|
+++ b/gdb/testsuite/gdb.dwarf2/dw2-undefined-ret-addr.exp
|
||||||
|
@@ -48,7 +48,7 @@ gdb_test "up" \
|
||||||
|
# doesn't cause an error, and shows "<not saved>".
|
||||||
|
gdb_test "info frame" [multi_line \
|
||||||
|
"Stack level 0, frame at $hex\:" \
|
||||||
|
- " rip = $hex in stop_frame \\(dw2-undefined-ret-addr\\.c:22\\); saved rip = <not saved>" \
|
||||||
|
+ " rip = $hex in stop_frame \\(dw2-undefined-ret-addr\\.c:22\\); saved rip = <unavailable>" \
|
||||||
|
" Outermost frame: outermost" \
|
||||||
|
" source language c\\." \
|
||||||
|
" Arglist at $hex, args\: " \
|
||||||
|
|
||||||
|
--oyUTqETQ0mS9luUI--
|
||||||
|
|
33
gdb-testsuite-readline63-sigint-revert.patch
Normal file
33
gdb-testsuite-readline63-sigint-revert.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
diff --git b/gdb/testsuite/gdb.gdb/selftest.exp a/gdb/testsuite/gdb.gdb/selftest.exp
|
||||||
|
index 7e6a4e1..969797a 100644
|
||||||
|
--- b/gdb/testsuite/gdb.gdb/selftest.exp
|
||||||
|
+++ a/gdb/testsuite/gdb.gdb/selftest.exp
|
||||||
|
@@ -451,25 +451,9 @@ proc test_with_self { executable } {
|
||||||
|
}
|
||||||
|
|
||||||
|
set description "send SIGINT signal to child process"
|
||||||
|
- gdb_test_multiple "signal SIGINT" "$description" {
|
||||||
|
- -re "^signal SIGINT\r\nContinuing with signal SIGINT.\r\nQuit\r\n" {
|
||||||
|
- pass "$description"
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- set description "send ^C to child process again"
|
||||||
|
- send_gdb "\003"
|
||||||
|
- gdb_expect {
|
||||||
|
- -re "(Thread .*|Program) received signal SIGINT.*$gdb_prompt $" {
|
||||||
|
- pass "$description"
|
||||||
|
- }
|
||||||
|
- -re ".*$gdb_prompt $" {
|
||||||
|
- fail "$description"
|
||||||
|
- }
|
||||||
|
- timeout {
|
||||||
|
- fail "$description (timeout)"
|
||||||
|
- }
|
||||||
|
- }
|
||||||
|
+ gdb_test "signal SIGINT" \
|
||||||
|
+ "Continuing with signal SIGINT.*" \
|
||||||
|
+ "$description"
|
||||||
|
|
||||||
|
# Switch back to the GDB thread if Guile support is linked in.
|
||||||
|
# "signal SIGINT" could also switch the current thread.
|
@ -2055,3 +2055,334 @@ Date: Thu Mar 31 19:28:47 2016 +0100
|
|||||||
- one_jit_test 1 "${hex} jit_function_0000"
|
- one_jit_test 1 "${hex} jit_function_0000"
|
||||||
+ one_jit_test 1 "${hex} jit_function_0000" 0
|
+ one_jit_test 1 "${hex} jit_function_0000" 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
commit 2d35e871274a48331c4d6c7b3e4fbee42b901f33
|
||||||
|
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
Date: Thu Apr 7 22:18:49 2016 +0200
|
||||||
|
|
||||||
|
testsuite: Fix false FAILs with .bashrc GDBHISTFILE=...
|
||||||
|
|
||||||
|
$ GDBHISTFILE=/tmp/gdbhistfile runtest gdb.base/gdbhistsize-history.exp gdb.base/gdbinit-history.exp
|
||||||
|
Running ./gdb.base/gdbinit-history.exp ...
|
||||||
|
FAIL: gdb.base/gdbinit-history.exp: home=gdbinit-history/unlimited gdbhistsize=1000: show commands
|
||||||
|
FAIL: gdb.base/gdbinit-history.exp: home=gdbinit-history/unlimited gdbhistsize=foo: show commands
|
||||||
|
Running ./gdb.base/gdbhistsize-history.exp ...
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=20: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize= 20 : show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=-5: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=not_an_integer: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=10zab: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=-5ab: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=99999999999999999999999999999999999: show commands
|
||||||
|
FAIL: gdb.base/gdbhistsize-history.exp: histsize=50: show commands
|
||||||
|
|
||||||
|
This happens for my setup due to my:
|
||||||
|
$ grep GDB ~/.bashrc
|
||||||
|
export GDBHISTFILE="$HOME/.gdb_history"
|
||||||
|
|
||||||
|
gdb/testsuite/ChangeLog
|
||||||
|
2016-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
* gdb.base/gdbhistsize-history.exp: Save and unset GDBHISTFILE and
|
||||||
|
GDBHISTSIZE prior to the tests.
|
||||||
|
* gdb.base/gdbinit-history.exp: Likewise.
|
||||||
|
|
||||||
|
### a/gdb/testsuite/ChangeLog
|
||||||
|
### b/gdb/testsuite/ChangeLog
|
||||||
|
## -1,4 +1,10 @@
|
||||||
|
-2015-04-07 Pedro Alves <palves@redhat.com>
|
||||||
|
+2016-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
+
|
||||||
|
+ * gdb.base/gdbhistsize-history.exp: Save and unset GDBHISTFILE and
|
||||||
|
+ GDBHISTSIZE prior to the tests.
|
||||||
|
+ * gdb.base/gdbinit-history.exp: Likewise.
|
||||||
|
+
|
||||||
|
+2016-04-07 Pedro Alves <palves@redhat.com>
|
||||||
|
|
||||||
|
* gdb.compile/compile.exp: Use gdb_compile with "shlib=" option
|
||||||
|
instead of build_executable. Use gdb_load_shlibs.
|
||||||
|
--- a/gdb/testsuite/gdb.base/gdbhistsize-history.exp
|
||||||
|
+++ b/gdb/testsuite/gdb.base/gdbhistsize-history.exp
|
||||||
|
@@ -32,7 +32,13 @@ if { [is_remote host] } {
|
||||||
|
proc test_histsize_history_setting { histsize size { env_var "GDBHISTSIZE" } } {
|
||||||
|
global env
|
||||||
|
|
||||||
|
- save_vars { env($env_var) } {
|
||||||
|
+ save_vars { env(GDBHISTFILE) env(GDBHISTSIZE) env($env_var) } {
|
||||||
|
+ # These environment variables take precedence over whatever
|
||||||
|
+ # history size is set in .gdbinit. Make sure the former is not
|
||||||
|
+ # set.
|
||||||
|
+ unset -nocomplain env(GDBHISTFILE)
|
||||||
|
+ unset -nocomplain env(GDBHISTSIZE)
|
||||||
|
+
|
||||||
|
set env($env_var) $histsize
|
||||||
|
|
||||||
|
with_test_prefix "histsize=$histsize" {
|
||||||
|
--- a/gdb/testsuite/gdb.base/gdbinit-history.exp
|
||||||
|
+++ b/gdb/testsuite/gdb.base/gdbinit-history.exp
|
||||||
|
@@ -36,12 +36,13 @@ proc test_gdbinit_history_setting { home size { gdbhistsize_val "-" } } {
|
||||||
|
global srcdir
|
||||||
|
global subdir
|
||||||
|
|
||||||
|
- save_vars { INTERNAL_GDBFLAGS env(GDBHISTSIZE) env(HOME) } {
|
||||||
|
+ save_vars { INTERNAL_GDBFLAGS env(GDBHISTFILE) env(GDBHISTSIZE) env(HOME) } {
|
||||||
|
set env(HOME) "$srcdir/$subdir/$home"
|
||||||
|
|
||||||
|
- # The GDBHISTSIZE environment variable takes precedence over whatever
|
||||||
|
+ # These environment variables take precedence over whatever
|
||||||
|
# history size is set in .gdbinit. Make sure the former is not
|
||||||
|
# set.
|
||||||
|
+ unset -nocomplain env(GDBHISTFILE)
|
||||||
|
unset -nocomplain env(GDBHISTSIZE)
|
||||||
|
|
||||||
|
if { $gdbhistsize_val != "-" } {
|
||||||
|
@@ -77,10 +78,11 @@ proc test_no_truncation_of_unlimited_history_file { } {
|
||||||
|
global env
|
||||||
|
global INTERNAL_GDBFLAGS
|
||||||
|
|
||||||
|
- save_vars { INTERNAL_GDBFLAGS env(GDBHISTSIZE) } {
|
||||||
|
- # The GDBHISTSIZE environment variable takes precedence over whatever
|
||||||
|
+ save_vars { INTERNAL_GDBFLAGS env(GDBHISTFILE) env(GDBHISTSIZE) } {
|
||||||
|
+ # These environment variables take precedence over whatever
|
||||||
|
# history size is set in .gdbinit. Make sure the former is not
|
||||||
|
# set.
|
||||||
|
+ unset -nocomplain env(GDBHISTFILE)
|
||||||
|
unset -nocomplain env(GDBHISTSIZE)
|
||||||
|
|
||||||
|
set temp_gdbinit [standard_output_file "gdbinit-history.gdbinit"]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
commit 065005336492337c92d06e87544646635a5b9566
|
||||||
|
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
Date: Fri Apr 8 15:38:53 2016 +0200
|
||||||
|
|
||||||
|
testsuite: Fix for gcc-4.8: gdb.base/jit.exp gdb.base/jit-so.exp
|
||||||
|
|
||||||
|
on CentOS-7.2 I get
|
||||||
|
|
||||||
|
Running /home/jkratoch/redhat/gdb-test-reg/gdb/testsuite/gdb.base/jit.exp ...
|
||||||
|
FAIL: gdb.base/jit.exp: one_jit_test-1: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
FAIL: gdb.base/jit.exp: one_jit_test-2: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
FAIL: gdb.base/jit.exp: attach: one_jit_test-2: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
FAIL: gdb.base/jit.exp: attach: one_jit_test-2: break here 2: set var wait_for_gdb = 1
|
||||||
|
FAIL: gdb.base/jit.exp: attach: one_jit_test-2: break here 2: detach (the program is no longer running)
|
||||||
|
FAIL: gdb.base/jit.exp: attach: one_jit_test-2: break here 2: attach
|
||||||
|
FAIL: gdb.base/jit.exp: attach: one_jit_test-2: break here 2: set var wait_for_gdb = 0
|
||||||
|
FAIL: gdb.base/jit.exp: PIE: one_jit_test-1: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
Running /home/jkratoch/redhat/gdb-test-reg/gdb/testsuite/gdb.base/jit-so.exp ...
|
||||||
|
FAIL: gdb.base/jit-so.exp: one_jit_test-1: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
FAIL: gdb.base/jit-so.exp: one_jit_test-2: continue to breakpoint: break here 2 (the program exited)
|
||||||
|
|
||||||
|
since:
|
||||||
|
|
||||||
|
85af34ee0211eedf8d30a5c44dfc59dddf8b512a is the first bad commit
|
||||||
|
commit 85af34ee0211eedf8d30a5c44dfc59dddf8b512a
|
||||||
|
Author: Pedro Alves <palves@redhat.com>
|
||||||
|
Date: Thu Mar 31 19:28:47 2016 +0100
|
||||||
|
Add regression test for PR gdb/19858 (JIT code registration on attach)
|
||||||
|
|
||||||
|
The compiled code's .debug_line is wrong (for the simplistic approach of GDB
|
||||||
|
to put a breakpoint on the first address belonging to that source line) and so
|
||||||
|
GDB misses the breakpoint at the last line:
|
||||||
|
WAIT_FOR_GDB; return 0; /* gdb break here 2 */
|
||||||
|
|
||||||
|
Most of the patch is just about reindentation, no changes there.
|
||||||
|
|
||||||
|
gdb/testsuite/ChangeLog
|
||||||
|
2016-04-08 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
Fix compatibility with gcc-4.8.5-4.el7.x86_64.
|
||||||
|
* gdb.base/jit-main.c: Use exit after usage.
|
||||||
|
|
||||||
|
### a/gdb/testsuite/ChangeLog
|
||||||
|
### b/gdb/testsuite/ChangeLog
|
||||||
|
## -1,3 +1,8 @@
|
||||||
|
+2016-04-08 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
+
|
||||||
|
+ Fix compatibility with gcc-4.8.5-4.el7.x86_64.
|
||||||
|
+ * gdb.base/jit-main.c: Use exit after usage.
|
||||||
|
+
|
||||||
|
2016-04-07 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||||
|
|
||||||
|
* gdb.base/gdbhistsize-history.exp: Save and unset GDBHISTFILE and
|
||||||
|
--- a/gdb/testsuite/gdb.base/jit-main.c
|
||||||
|
+++ b/gdb/testsuite/gdb.base/jit-main.c
|
||||||
|
@@ -138,7 +138,8 @@ MAIN (int argc, char *argv[])
|
||||||
|
{
|
||||||
|
/* These variables are here so they can easily be set from jit.exp. */
|
||||||
|
const char *libname = NULL;
|
||||||
|
- int count = 0;
|
||||||
|
+ int count = 0, i, fd;
|
||||||
|
+ struct stat st;
|
||||||
|
|
||||||
|
alarm (300);
|
||||||
|
|
||||||
|
@@ -147,90 +148,89 @@ MAIN (int argc, char *argv[])
|
||||||
|
count = count; /* gdb break here 0 */
|
||||||
|
|
||||||
|
if (argc < 2)
|
||||||
|
- usage (argv[0]);
|
||||||
|
- else
|
||||||
|
{
|
||||||
|
- int i, fd;
|
||||||
|
- struct stat st;
|
||||||
|
+ usage (argv[0]);
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- if (libname == NULL)
|
||||||
|
- /* Only set if not already set from GDB. */
|
||||||
|
- libname = argv[1];
|
||||||
|
+ if (libname == NULL)
|
||||||
|
+ /* Only set if not already set from GDB. */
|
||||||
|
+ libname = argv[1];
|
||||||
|
|
||||||
|
- if (argc > 2 && count == 0)
|
||||||
|
- /* Only set if not already set from GDB. */
|
||||||
|
- count = atoi (argv[2]);
|
||||||
|
+ if (argc > 2 && count == 0)
|
||||||
|
+ /* Only set if not already set from GDB. */
|
||||||
|
+ count = atoi (argv[2]);
|
||||||
|
|
||||||
|
- printf ("%s:%d: libname = %s, count = %d\n", __FILE__, __LINE__,
|
||||||
|
- libname, count);
|
||||||
|
+ printf ("%s:%d: libname = %s, count = %d\n", __FILE__, __LINE__,
|
||||||
|
+ libname, count);
|
||||||
|
|
||||||
|
- if ((fd = open (libname, O_RDONLY)) == -1)
|
||||||
|
- {
|
||||||
|
- fprintf (stderr, "open (\"%s\", O_RDONLY): %s\n", libname,
|
||||||
|
- strerror (errno));
|
||||||
|
- exit (1);
|
||||||
|
- }
|
||||||
|
+ if ((fd = open (libname, O_RDONLY)) == -1)
|
||||||
|
+ {
|
||||||
|
+ fprintf (stderr, "open (\"%s\", O_RDONLY): %s\n", libname,
|
||||||
|
+ strerror (errno));
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- if (fstat (fd, &st) != 0)
|
||||||
|
- {
|
||||||
|
- fprintf (stderr, "fstat (\"%d\"): %s\n", fd, strerror (errno));
|
||||||
|
- exit (1);
|
||||||
|
- }
|
||||||
|
+ if (fstat (fd, &st) != 0)
|
||||||
|
+ {
|
||||||
|
+ fprintf (stderr, "fstat (\"%d\"): %s\n", fd, strerror (errno));
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- for (i = 0; i < count; ++i)
|
||||||
|
- {
|
||||||
|
- const void *const addr = mmap (0, st.st_size, PROT_READ|PROT_WRITE,
|
||||||
|
- MAP_PRIVATE, fd, 0);
|
||||||
|
- struct jit_code_entry *const entry = calloc (1, sizeof (*entry));
|
||||||
|
-
|
||||||
|
- if (addr == MAP_FAILED)
|
||||||
|
- {
|
||||||
|
- fprintf (stderr, "mmap: %s\n", strerror (errno));
|
||||||
|
- exit (1);
|
||||||
|
- }
|
||||||
|
-
|
||||||
|
- update_locations (addr, i);
|
||||||
|
-
|
||||||
|
- /* Link entry at the end of the list. */
|
||||||
|
- entry->symfile_addr = (const char *)addr;
|
||||||
|
- entry->symfile_size = st.st_size;
|
||||||
|
- entry->prev_entry = __jit_debug_descriptor.relevant_entry;
|
||||||
|
- __jit_debug_descriptor.relevant_entry = entry;
|
||||||
|
-
|
||||||
|
- if (entry->prev_entry != NULL)
|
||||||
|
- entry->prev_entry->next_entry = entry;
|
||||||
|
- else
|
||||||
|
- __jit_debug_descriptor.first_entry = entry;
|
||||||
|
-
|
||||||
|
- /* Notify GDB. */
|
||||||
|
- __jit_debug_descriptor.action_flag = JIT_REGISTER_FN;
|
||||||
|
- __jit_debug_register_code ();
|
||||||
|
- }
|
||||||
|
+ for (i = 0; i < count; ++i)
|
||||||
|
+ {
|
||||||
|
+ const void *const addr = mmap (0, st.st_size, PROT_READ|PROT_WRITE,
|
||||||
|
+ MAP_PRIVATE, fd, 0);
|
||||||
|
+ struct jit_code_entry *const entry = calloc (1, sizeof (*entry));
|
||||||
|
+
|
||||||
|
+ if (addr == MAP_FAILED)
|
||||||
|
+ {
|
||||||
|
+ fprintf (stderr, "mmap: %s\n", strerror (errno));
|
||||||
|
+ exit (1);
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ update_locations (addr, i);
|
||||||
|
+
|
||||||
|
+ /* Link entry at the end of the list. */
|
||||||
|
+ entry->symfile_addr = (const char *)addr;
|
||||||
|
+ entry->symfile_size = st.st_size;
|
||||||
|
+ entry->prev_entry = __jit_debug_descriptor.relevant_entry;
|
||||||
|
+ __jit_debug_descriptor.relevant_entry = entry;
|
||||||
|
+
|
||||||
|
+ if (entry->prev_entry != NULL)
|
||||||
|
+ entry->prev_entry->next_entry = entry;
|
||||||
|
+ else
|
||||||
|
+ __jit_debug_descriptor.first_entry = entry;
|
||||||
|
+
|
||||||
|
+ /* Notify GDB. */
|
||||||
|
+ __jit_debug_descriptor.action_flag = JIT_REGISTER_FN;
|
||||||
|
+ __jit_debug_register_code ();
|
||||||
|
+ }
|
||||||
|
|
||||||
|
- WAIT_FOR_GDB; i = 0; /* gdb break here 1 */
|
||||||
|
+ WAIT_FOR_GDB; i = 0; /* gdb break here 1 */
|
||||||
|
|
||||||
|
- /* Now unregister them all in reverse order. */
|
||||||
|
- while (__jit_debug_descriptor.relevant_entry != NULL)
|
||||||
|
- {
|
||||||
|
- struct jit_code_entry *const entry =
|
||||||
|
- __jit_debug_descriptor.relevant_entry;
|
||||||
|
- struct jit_code_entry *const prev_entry = entry->prev_entry;
|
||||||
|
-
|
||||||
|
- if (prev_entry != NULL)
|
||||||
|
- {
|
||||||
|
- prev_entry->next_entry = NULL;
|
||||||
|
- entry->prev_entry = NULL;
|
||||||
|
- }
|
||||||
|
- else
|
||||||
|
- __jit_debug_descriptor.first_entry = NULL;
|
||||||
|
-
|
||||||
|
- /* Notify GDB. */
|
||||||
|
- __jit_debug_descriptor.action_flag = JIT_UNREGISTER_FN;
|
||||||
|
- __jit_debug_register_code ();
|
||||||
|
-
|
||||||
|
- __jit_debug_descriptor.relevant_entry = prev_entry;
|
||||||
|
- free (entry);
|
||||||
|
- }
|
||||||
|
+ /* Now unregister them all in reverse order. */
|
||||||
|
+ while (__jit_debug_descriptor.relevant_entry != NULL)
|
||||||
|
+ {
|
||||||
|
+ struct jit_code_entry *const entry =
|
||||||
|
+ __jit_debug_descriptor.relevant_entry;
|
||||||
|
+ struct jit_code_entry *const prev_entry = entry->prev_entry;
|
||||||
|
+
|
||||||
|
+ if (prev_entry != NULL)
|
||||||
|
+ {
|
||||||
|
+ prev_entry->next_entry = NULL;
|
||||||
|
+ entry->prev_entry = NULL;
|
||||||
|
+ }
|
||||||
|
+ else
|
||||||
|
+ __jit_debug_descriptor.first_entry = NULL;
|
||||||
|
+
|
||||||
|
+ /* Notify GDB. */
|
||||||
|
+ __jit_debug_descriptor.action_flag = JIT_UNREGISTER_FN;
|
||||||
|
+ __jit_debug_register_code ();
|
||||||
|
+
|
||||||
|
+ __jit_debug_descriptor.relevant_entry = prev_entry;
|
||||||
|
+ free (entry);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
WAIT_FOR_GDB; return 0; /* gdb break here 2 */
|
||||||
|
}
|
||||||
|
13
gdb.spec
13
gdb.spec
@ -27,7 +27,7 @@ Version: 7.11
|
|||||||
|
|
||||||
# The release always contains a leading reserved number, start it at 1.
|
# The release always contains a leading reserved number, start it at 1.
|
||||||
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
||||||
Release: 66%{?dist}
|
Release: 67%{?dist}
|
||||||
|
|
||||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain and GFDL
|
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain and GFDL
|
||||||
Group: Development/Debuggers
|
Group: Development/Debuggers
|
||||||
@ -549,6 +549,7 @@ Patch1073: gdb-opcodes-clflushopt-test.patch
|
|||||||
|
|
||||||
# [testsuite] Fix false selftest.exp FAIL from system readline-6.3+ (Patrick Palka).
|
# [testsuite] Fix false selftest.exp FAIL from system readline-6.3+ (Patrick Palka).
|
||||||
Patch1075: gdb-testsuite-readline63-sigint.patch
|
Patch1075: gdb-testsuite-readline63-sigint.patch
|
||||||
|
Patch1119: gdb-testsuite-readline63-sigint-revert.patch
|
||||||
|
|
||||||
# [aarch64] Fix hardware watchpoints (RH BZ 1261564).
|
# [aarch64] Fix hardware watchpoints (RH BZ 1261564).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
@ -560,6 +561,9 @@ Patch1117: gdb-rhbz1318049-gdb-p-container-internal-error.patch
|
|||||||
# Add messages suggesting more recent RHEL gdbserver (RH BZ 1321114).
|
# Add messages suggesting more recent RHEL gdbserver (RH BZ 1321114).
|
||||||
Patch1118: gdb-container-rh-pkg.patch
|
Patch1118: gdb-container-rh-pkg.patch
|
||||||
|
|
||||||
|
# [testsuite] Fix 7.11 regression: gdb.dwarf2/dw2-undefined-ret-addr.exp
|
||||||
|
Patch1120: gdb-testsuite-dw2-undefined-ret-addr.patch
|
||||||
|
|
||||||
%if 0%{!?rhel:1} || 0%{?rhel} > 6
|
%if 0%{!?rhel:1} || 0%{?rhel} > 6
|
||||||
# RL_STATE_FEDORA_GDB would not be found for:
|
# RL_STATE_FEDORA_GDB would not be found for:
|
||||||
# Patch642: gdb-readline62-ask-more-rh.patch
|
# Patch642: gdb-readline62-ask-more-rh.patch
|
||||||
@ -864,12 +868,14 @@ find -name "*.info*"|xargs rm -f
|
|||||||
%patch642 -p1
|
%patch642 -p1
|
||||||
%patch337 -p1
|
%patch337 -p1
|
||||||
%patch331 -p1
|
%patch331 -p1
|
||||||
%patch1075 -p1
|
|
||||||
%patch1113 -p1
|
%patch1113 -p1
|
||||||
%patch1117 -p1
|
%patch1117 -p1
|
||||||
%patch1118 -p1
|
%patch1118 -p1
|
||||||
|
%patch1120 -p1
|
||||||
|
|
||||||
|
%patch1075 -p1
|
||||||
%if 0%{?rhel:1} && 0%{?rhel} <= 7
|
%if 0%{?rhel:1} && 0%{?rhel} <= 7
|
||||||
|
%patch1119 -p1
|
||||||
%patch1044 -p1
|
%patch1044 -p1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
@ -1385,6 +1391,9 @@ then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Apr 8 2016 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.11-67.fc24
|
||||||
|
- [testsuite] Fix several false FAILs.
|
||||||
|
|
||||||
* Wed Apr 6 2016 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.11-66.fc24
|
* Wed Apr 6 2016 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.11-66.fc24
|
||||||
- Import upstream 7.11 branch stable fixes.
|
- Import upstream 7.11 branch stable fixes.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user