From 8168897482391e6b15957ca69babd4ddcbd9e627 Mon Sep 17 00:00:00 2001 From: Jan Kratochvil Date: Wed, 12 May 2010 20:33:28 +0000 Subject: [PATCH] - Backport -completion bug on anonymous structure fields (BZ 590648). - testsuite: Fix gdb.base/vla-overflow.exp FAILing on s390x (BZ 590635). - Workaround non-stop moribund locations exploited by kernel utrace (BZ 590623). --- gdb-archer-vla-test-oom.patch | 21 +++++++++++++++++++++ gdb-moribund-utrace-workaround.patch | 16 ++++++++++++++++ gdb-upstream.patch | 21 +++++++++++++++++++++ gdb.spec | 15 ++++++++++++++- 4 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 gdb-archer-vla-test-oom.patch create mode 100644 gdb-moribund-utrace-workaround.patch diff --git a/gdb-archer-vla-test-oom.patch b/gdb-archer-vla-test-oom.patch new file mode 100644 index 0000000..dad5ca4 --- /dev/null +++ b/gdb-archer-vla-test-oom.patch @@ -0,0 +1,21 @@ +commit ec5a7769d5c05542d12fc21afa25f32360db7de4 +Author: Jan Kratochvil +Date: Wed May 12 22:00:46 2010 +0200 + + Fix mb_reserve: + https://bugzilla.redhat.com/show_bug.cgi?id=590635 + +diff --git a/gdb/testsuite/gdb.base/vla-overflow.exp b/gdb/testsuite/gdb.base/vla-overflow.exp +index 7203a48..24a608f 100644 +--- a/gdb/testsuite/gdb.base/vla-overflow.exp ++++ b/gdb/testsuite/gdb.base/vla-overflow.exp +@@ -66,7 +66,8 @@ proc memory_v_pages_get {} { + + set pages_found [memory_v_pages_get] + +-set mb_reserve 10 ++# s390x with glibc-debuginfo.s390x installed used approx. 16MB. ++set mb_reserve 40 + verbose -log "pages_found = $pages_found, mb_reserve = $mb_reserve" + set kb_found [expr $pages_found * $pagesize / 1024] + set kb_permit [expr $kb_found + 1 * 1024 + $mb_reserve * 1024] diff --git a/gdb-moribund-utrace-workaround.patch b/gdb-moribund-utrace-workaround.patch new file mode 100644 index 0000000..6b50a8e --- /dev/null +++ b/gdb-moribund-utrace-workaround.patch @@ -0,0 +1,16 @@ +https://bugzilla.redhat.com/show_bug.cgi?id=590623 +http://sources.redhat.com/bugzilla/show_bug.cgi?id=11593 + +Bug in FSF GDB exploited by the ptrace-on-utrace interaction. + +--- a/gdb/breakpoint.c ++++ b/gdb/breakpoint.c +@@ -9084,6 +9084,8 @@ update_global_location_list (int should_insert) + traps we can no longer explain. */ + + old_loc->events_till_retirement = 3 * (thread_count () + 1); ++ /* Red Hat Bug 590623. */ ++ old_loc->events_till_retirement *= 10; + old_loc->owner = NULL; + + VEC_safe_push (bp_location_p, moribund_locations, old_loc); diff --git a/gdb-upstream.patch b/gdb-upstream.patch index f53ca34..57b2e72 100644 --- a/gdb-upstream.patch +++ b/gdb-upstream.patch @@ -801,3 +801,24 @@ http://sourceware.org/ml/gdb-cvs/2010-04/msg00029.html + +gdb_breakpoint "main" +gdb_continue_to_breakpoint "main" "main.*" + + + +https://bugzilla.redhat.com/show_bug.cgi?id=590648 +Re: [rfc] Work around invalid G++ DWARF for unnamed aggregates +http://sourceware.org/ml/gdb-patches/2010-03/msg00909.html +commit 5e40af195bd74a66d300d8f481cab1f2ba533f3a + +[ cut only a part of it ] + +--- a/gdb/completer.c ++++ b/gdb/completer.c +@@ -401,7 +401,7 @@ add_struct_fields (struct type *type, int *nextp, char **output, + computed_type_name = 1; + } + /* Omit constructors from the completion list. */ +- if (type_name && strcmp (type_name, name)) ++ if (!type_name || strcmp (type_name, name)) + { + output[*nextp] = xstrdup (name); + ++*nextp; diff --git a/gdb.spec b/gdb.spec index 68227de..92b279b 100644 --- a/gdb.spec +++ b/gdb.spec @@ -36,7 +36,7 @@ Version: 7.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. -Release: 18%{?_with_upstream:.upstream}%{dist} +Release: 19%{?_with_upstream:.upstream}%{dist} License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and GFDL and BSD and Public Domain Group: Development/Debuggers @@ -470,6 +470,12 @@ Patch454: gdb-bz539590-gnu-ifunc-fix-cond.patch Patch456: gdb-unwind-debughook-safe-fail.patch Patch457: gdb-unwind-debughook-step-independent.patch +# testsuite: Fix gdb.base/vla-overflow.exp FAILing on s390x (BZ 590635). +Patch458: gdb-archer-vla-test-oom.patch + +# Workaround non-stop moribund locations exploited by kernel utrace (BZ 590623). +Patch459: gdb-moribund-utrace-workaround.patch + BuildRequires: ncurses-devel%{?_isa} texinfo gettext flex bison expat-devel%{?_isa} Requires: readline%{?_isa} BuildRequires: readline-devel%{?_isa} @@ -743,6 +749,8 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c %patch455 -p1 %patch456 -p1 %patch457 -p1 +%patch458 -p1 +%patch459 -p1 %patch415 -p1 %patch393 -p1 @@ -1075,6 +1083,11 @@ fi %endif %changelog +* Wed May 12 2010 Jan Kratochvil - 7.1-19.fc13 +- Backport -completion bug on anonymous structure fields (BZ 590648). +- testsuite: Fix gdb.base/vla-overflow.exp FAILing on s390x (BZ 590635). +- Workaround non-stop moribund locations exploited by kernel utrace (BZ 590623). + * Thu Apr 29 2010 Jan Kratochvil - 7.1-18.fc13 - Make _Unwind_DebugHook independent from step-resume breakpoint (Tom Tromey).