Remove gdb-glibc-strstr-workaround.patch
This patch only contains a test for a workaround against a libc bug. The glibc bug was fixed back in 2012, so this test patch was likely already not testing the gdb workaround for some time.
This commit is contained in:
parent
a2474061b2
commit
199e8a4899
@ -72,46 +72,42 @@ Patch017: gdb-test-bt-cfi-without-die.patch
|
|||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch018: gdb-test-dw2-aranges.patch
|
Patch018: gdb-test-dw2-aranges.patch
|
||||||
|
|
||||||
# Workaround PR libc/14166 for inferior calls of strstr.
|
|
||||||
#=fedoratest: Compatibility with RHELs (unchecked which ones).
|
|
||||||
Patch019: gdb-glibc-strstr-workaround.patch
|
|
||||||
|
|
||||||
# Testcase for `Setting solib-absolute-prefix breaks vDSO' (BZ 818343).
|
# Testcase for `Setting solib-absolute-prefix breaks vDSO' (BZ 818343).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch020: gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
|
Patch019: gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
|
||||||
|
|
||||||
# Import regression test for `gdb/findvar.c:417: internal-error:
|
# Import regression test for `gdb/findvar.c:417: internal-error:
|
||||||
# read_var_value: Assertion `frame' failed.' (RH BZ 947564) from RHEL 6.5.
|
# read_var_value: Assertion `frame' failed.' (RH BZ 947564) from RHEL 6.5.
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch021: gdb-rhbz947564-findvar-assertion-frame-failed-testcase.patch
|
Patch020: gdb-rhbz947564-findvar-assertion-frame-failed-testcase.patch
|
||||||
|
|
||||||
# Fix 'memory leak in infpy_read_memory()' (RH BZ 1007614)
|
# Fix 'memory leak in infpy_read_memory()' (RH BZ 1007614)
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch022: gdb-rhbz1007614-memleak-infpy_read_memory-test.patch
|
Patch021: gdb-rhbz1007614-memleak-infpy_read_memory-test.patch
|
||||||
|
|
||||||
# Fix 'gdb gives highly misleading error when debuginfo pkg is present,
|
# Fix 'gdb gives highly misleading error when debuginfo pkg is present,
|
||||||
# but not corresponding binary pkg' (RH BZ 981154).
|
# but not corresponding binary pkg' (RH BZ 981154).
|
||||||
#=push+jan
|
#=push+jan
|
||||||
Patch023: gdb-6.6-buildid-locate-misleading-warning-missing-debuginfo-rhbz981154.patch
|
Patch022: gdb-6.6-buildid-locate-misleading-warning-missing-debuginfo-rhbz981154.patch
|
||||||
|
|
||||||
# Testcase for '[SAP] Recursive dlopen causes SAP HANA installer to
|
# Testcase for '[SAP] Recursive dlopen causes SAP HANA installer to
|
||||||
# crash.' (RH BZ 1156192).
|
# crash.' (RH BZ 1156192).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch024: gdb-rhbz1156192-recursive-dlopen-test.patch
|
Patch023: gdb-rhbz1156192-recursive-dlopen-test.patch
|
||||||
|
|
||||||
# Fix '`catch syscall' doesn't work for parent after `fork' is called'
|
# Fix '`catch syscall' doesn't work for parent after `fork' is called'
|
||||||
# (Philippe Waroquiers, RH BZ 1149205).
|
# (Philippe Waroquiers, RH BZ 1149205).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch025: gdb-rhbz1149205-catch-syscall-after-fork-test.patch
|
Patch024: gdb-rhbz1149205-catch-syscall-after-fork-test.patch
|
||||||
|
|
||||||
# Fix '[ppc64] and [s390x] wrong prologue skip on -O2 -g code' (Jan
|
# Fix '[ppc64] and [s390x] wrong prologue skip on -O2 -g code' (Jan
|
||||||
# Kratochvil, RH BZ 1084404).
|
# Kratochvil, RH BZ 1084404).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch026: gdb-rhbz1084404-ppc64-s390x-wrong-prologue-skip-O2-g-3of3.patch
|
Patch025: gdb-rhbz1084404-ppc64-s390x-wrong-prologue-skip-O2-g-3of3.patch
|
||||||
|
|
||||||
# [aarch64] Fix hardware watchpoints (RH BZ 1261564).
|
# [aarch64] Fix hardware watchpoints (RH BZ 1261564).
|
||||||
#=fedoratest
|
#=fedoratest
|
||||||
Patch027: gdb-rhbz1261564-aarch64-hw-watchpoint-test.patch
|
Patch026: gdb-rhbz1261564-aarch64-hw-watchpoint-test.patch
|
||||||
|
|
||||||
# Update gdb-add-index.sh such that, when the GDB environment
|
# Update gdb-add-index.sh such that, when the GDB environment
|
||||||
# variable is not set, the script is smarter than just looking for
|
# variable is not set, the script is smarter than just looking for
|
||||||
@ -125,75 +121,75 @@ Patch027: gdb-rhbz1261564-aarch64-hw-watchpoint-test.patch
|
|||||||
# https://fedoraproject.org/wiki/Changes/Minimal_GDB_in_buildroot
|
# https://fedoraproject.org/wiki/Changes/Minimal_GDB_in_buildroot
|
||||||
#
|
#
|
||||||
#=fedora
|
#=fedora
|
||||||
Patch028: gdb-add-index.patch
|
Patch027: gdb-add-index.patch
|
||||||
|
|
||||||
# Back-port upstream commit 1f0fab7ff86 as part of a fix for
|
# Back-port upstream commit 1f0fab7ff86 as part of a fix for
|
||||||
# non-deterministic gdb-index generation (RH BZ 2232086).
|
# non-deterministic gdb-index generation (RH BZ 2232086).
|
||||||
Patch029: gdb-rhbz2232086-refactor-selftest-support.patch
|
Patch028: gdb-rhbz2232086-refactor-selftest-support.patch
|
||||||
|
|
||||||
# Back-port upstream commit aa19bc1d259 as part of a fix for
|
# Back-port upstream commit aa19bc1d259 as part of a fix for
|
||||||
# non-deterministic gdb-index generation (RH BZ 2232086).
|
# non-deterministic gdb-index generation (RH BZ 2232086).
|
||||||
Patch030: gdb-rhbz-2232086-reduce-size-of-gdb-index.patch
|
Patch029: gdb-rhbz-2232086-reduce-size-of-gdb-index.patch
|
||||||
|
|
||||||
# Back-port upstream commit acc117b57f7 as part of a fix for
|
# Back-port upstream commit acc117b57f7 as part of a fix for
|
||||||
# non-deterministic gdb-index generation (RH BZ 2232086).
|
# non-deterministic gdb-index generation (RH BZ 2232086).
|
||||||
Patch031: gdb-rhbz-2232086-cpp-ify-mapped-symtab.patch
|
Patch030: gdb-rhbz-2232086-cpp-ify-mapped-symtab.patch
|
||||||
|
|
||||||
# Back-port upstream commit aff250145af as part of a fix for
|
# Back-port upstream commit aff250145af as part of a fix for
|
||||||
# non-deterministic gdb-index generation (RH BZ 2232086).
|
# non-deterministic gdb-index generation (RH BZ 2232086).
|
||||||
Patch032: gdb-rhbz-2232086-generate-gdb-index-consistently.patch
|
Patch031: gdb-rhbz-2232086-generate-gdb-index-consistently.patch
|
||||||
|
|
||||||
# Back-port upstream commit 3644f41dc80 as part of a fix for
|
# Back-port upstream commit 3644f41dc80 as part of a fix for
|
||||||
# non-deterministic gdb-index generation (RH BZ 2232086).
|
# non-deterministic gdb-index generation (RH BZ 2232086).
|
||||||
Patch033: gdb-rhbz-2232086-generate-dwarf-5-index-consistently.patch
|
Patch032: gdb-rhbz-2232086-generate-dwarf-5-index-consistently.patch
|
||||||
|
|
||||||
|
|
||||||
Patch034: gdb-rhbz2250652-gdbpy_gil.patch
|
Patch033: gdb-rhbz2250652-gdbpy_gil.patch
|
||||||
|
|
||||||
|
|
||||||
Patch035: gdb-rhbz2250652-avoid-PyOS_ReadlineTState.patch
|
Patch034: gdb-rhbz2250652-avoid-PyOS_ReadlineTState.patch
|
||||||
|
|
||||||
|
|
||||||
Patch036: gdb-ftbs-swapped-calloc-args.patch
|
Patch035: gdb-ftbs-swapped-calloc-args.patch
|
||||||
|
|
||||||
# Backport upstream workaround for GCC 14 problem which cause assertion
|
# Backport upstream workaround for GCC 14 problem which cause assertion
|
||||||
# failures in GDB.
|
# failures in GDB.
|
||||||
Patch037: gdb-rhbz2261580-intrusive_list-assertion-fix.patch
|
Patch036: gdb-rhbz2261580-intrusive_list-assertion-fix.patch
|
||||||
|
|
||||||
# Backport upstream commit 7628a997f27.
|
# Backport upstream commit 7628a997f27.
|
||||||
Patch038: gdb-sync-coffread-with-elfread.patch
|
Patch037: gdb-sync-coffread-with-elfread.patch
|
||||||
|
|
||||||
# Backport upstream commit 27807da5849.
|
# Backport upstream commit 27807da5849.
|
||||||
Patch039: gdb-merge-debug-symbol-lookup.patch
|
Patch038: gdb-merge-debug-symbol-lookup.patch
|
||||||
|
|
||||||
# Backport upstream commit 6234ba17598.
|
# Backport upstream commit 6234ba17598.
|
||||||
Patch040: gdb-refactor-find-and-add-separate-symbol-file.patch
|
Patch039: gdb-refactor-find-and-add-separate-symbol-file.patch
|
||||||
|
|
||||||
# Backport upstream commit 661d98a3331.
|
# Backport upstream commit 661d98a3331.
|
||||||
Patch041: gdb-add-missing-debug-ext-lang-hook.patch
|
Patch040: gdb-add-missing-debug-ext-lang-hook.patch
|
||||||
|
|
||||||
# Backport upstream commit 8f6c452b5a4.
|
# Backport upstream commit 8f6c452b5a4.
|
||||||
Patch042: gdb-add-missing-debug-info-python-hook.patch
|
Patch041: gdb-add-missing-debug-info-python-hook.patch
|
||||||
|
|
||||||
# Backport upstream commit 7db795bc67a.
|
# Backport upstream commit 7db795bc67a.
|
||||||
Patch043: gdb-remove-use-of-py-isascii
|
Patch042: gdb-remove-use-of-py-isascii
|
||||||
|
|
||||||
# Backport upstream commit 1146d27749f.
|
# Backport upstream commit 1146d27749f.
|
||||||
Patch044: gdb-remove-path-in-test-name.patch
|
Patch043: gdb-remove-path-in-test-name.patch
|
||||||
|
|
||||||
# Backport upstream commit e8c3dafa5f5.
|
# Backport upstream commit e8c3dafa5f5.
|
||||||
Patch045: gdb-do-not-import-py-curses-ascii-module.patch
|
Patch044: gdb-do-not-import-py-curses-ascii-module.patch
|
||||||
|
|
||||||
# Backport upstream commit dd5516bf98f.
|
# Backport upstream commit dd5516bf98f.
|
||||||
Patch046: gdb-reformat-missing-debug-py-file.patch
|
Patch045: gdb-reformat-missing-debug-py-file.patch
|
||||||
|
|
||||||
# Backport upstream commit 7d21600b31fe.
|
# Backport upstream commit 7d21600b31fe.
|
||||||
Patch047: gdb-handle-no-python-gdb-module.patch
|
Patch046: gdb-handle-no-python-gdb-module.patch
|
||||||
|
|
||||||
# Not a backport. Add a new script which hooks into GDB and suggests
|
# Not a backport. Add a new script which hooks into GDB and suggests
|
||||||
# RPMs to install when GDB finds an objfile with no debug info.
|
# RPMs to install when GDB finds an objfile with no debug info.
|
||||||
Patch048: gdb-add-rpm-suggestion-script.patch
|
Patch047: gdb-add-rpm-suggestion-script.patch
|
||||||
|
|
||||||
# Update x86 disassembler
|
# Update x86 disassembler
|
||||||
Patch049: gdb-rhbz2277160-apx-disasm.patch
|
Patch048: gdb-rhbz2277160-apx-disasm.patch
|
||||||
|
|
||||||
|
@ -46,4 +46,3 @@
|
|||||||
%patch -p1 -P046
|
%patch -p1 -P046
|
||||||
%patch -p1 -P047
|
%patch -p1 -P047
|
||||||
%patch -p1 -P048
|
%patch -p1 -P048
|
||||||
%patch -p1 -P049
|
|
||||||
|
@ -16,7 +16,6 @@ gdb-simultaneous-step-resume-breakpoint-test.patch
|
|||||||
gdb-archer-next-over-throw-cxx-exec.patch
|
gdb-archer-next-over-throw-cxx-exec.patch
|
||||||
gdb-test-bt-cfi-without-die.patch
|
gdb-test-bt-cfi-without-die.patch
|
||||||
gdb-test-dw2-aranges.patch
|
gdb-test-dw2-aranges.patch
|
||||||
gdb-glibc-strstr-workaround.patch
|
|
||||||
gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
|
gdb-rhbz-818343-set-solib-absolute-prefix-testcase.patch
|
||||||
gdb-rhbz947564-findvar-assertion-frame-failed-testcase.patch
|
gdb-rhbz947564-findvar-assertion-frame-failed-testcase.patch
|
||||||
gdb-rhbz1007614-memleak-infpy_read_memory-test.patch
|
gdb-rhbz1007614-memleak-infpy_read_memory-test.patch
|
||||||
|
@ -1,130 +0,0 @@
|
|||||||
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
|
|
||||||
From: Fedora GDB patches <invalid@email.com>
|
|
||||||
Date: Fri, 27 Oct 2017 21:07:50 +0200
|
|
||||||
Subject: gdb-glibc-strstr-workaround.patch
|
|
||||||
|
|
||||||
;; Workaround PR libc/14166 for inferior calls of strstr.
|
|
||||||
;;=fedoratest: Compatibility with RHELs (unchecked which ones).
|
|
||||||
|
|
||||||
diff --git a/gdb/testsuite/gdb.base/gnu-ifunc-strstr-workaround.exp b/gdb/testsuite/gdb.base/gnu-ifunc-strstr-workaround.exp
|
|
||||||
new file mode 100644
|
|
||||||
--- /dev/null
|
|
||||||
+++ b/gdb/testsuite/gdb.base/gnu-ifunc-strstr-workaround.exp
|
|
||||||
@@ -0,0 +1,117 @@
|
|
||||||
+# Copyright (C) 2012 Free Software Foundation, Inc.
|
|
||||||
+
|
|
||||||
+# This program is free software; you can redistribute it and/or modify
|
|
||||||
+# it under the terms of the GNU General Public License as published by
|
|
||||||
+# the Free Software Foundation; either version 3 of the License, or
|
|
||||||
+# (at your option) any later version.
|
|
||||||
+#
|
|
||||||
+# This program is distributed in the hope that it will be useful,
|
|
||||||
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
+# GNU General Public License for more details.
|
|
||||||
+#
|
|
||||||
+# You should have received a copy of the GNU General Public License
|
|
||||||
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
||||||
+
|
|
||||||
+# Workaround for:
|
|
||||||
+# invalid IFUNC DW_AT_linkage_name: memmove strstr time
|
|
||||||
+# http://sourceware.org/bugzilla/show_bug.cgi?id=14166
|
|
||||||
+
|
|
||||||
+require allow_shlib_tests
|
|
||||||
+
|
|
||||||
+set testfile "gnu-ifunc-strstr-workaround"
|
|
||||||
+set executable ${testfile}
|
|
||||||
+set srcfile start.c
|
|
||||||
+set binfile [standard_output_file ${executable}]
|
|
||||||
+
|
|
||||||
+if [prepare_for_testing ${testfile}.exp $executable $srcfile] {
|
|
||||||
+ return -1
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+if ![runto_main] {
|
|
||||||
+ return 0
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+set test "ptype atoi"
|
|
||||||
+gdb_test_multiple $test $test {
|
|
||||||
+ -re "type = int \\(const char \\*\\)\r\n$gdb_prompt $" {
|
|
||||||
+ pass $test
|
|
||||||
+ }
|
|
||||||
+ -re "type = int \\(\\)\r\n$gdb_prompt $" {
|
|
||||||
+ untested "$test (no DWARF)"
|
|
||||||
+ return 0
|
|
||||||
+ }
|
|
||||||
+ -re "type = <unknown return type> \\(\\)\r\n$gdb_prompt $" {
|
|
||||||
+ untested "$test (no DWARF)"
|
|
||||||
+ return 0
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+set addr ""
|
|
||||||
+set test "print strstr"
|
|
||||||
+gdb_test_multiple $test $test {
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} (0x\[0-9a-f\]+) <strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ set addr $expect_out(1,string)
|
|
||||||
+ pass $test
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} (0x\[0-9a-f\]+) <__strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ set addr $expect_out(1,string)
|
|
||||||
+ pass "$test (GDB workaround)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} (0x\[0-9a-f\]+) <__libc_strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ set addr $expect_out(1,string)
|
|
||||||
+ pass "$test (fixed glibc)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} (0x\[0-9a-f\]+) <__libc_strstr_ifunc>\r\n$gdb_prompt $" {
|
|
||||||
+ set addr $expect_out(1,string)
|
|
||||||
+ pass "$test (fixed glibc)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {char \\*\\(const char \\*, const char \\*\\)} 0x\[0-9a-f\]+ <strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ untested "$test (gnu-ifunc not in use by glibc)"
|
|
||||||
+ return 0
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+set test "info sym"
|
|
||||||
+gdb_test_multiple "info sym $addr" $test {
|
|
||||||
+ -re "strstr in section \\.text of /lib\[^/\]*/libc.so.6\r\n$gdb_prompt $" {
|
|
||||||
+ pass $test
|
|
||||||
+ }
|
|
||||||
+ -re " = {char \\*\\(const char \\*, const char \\*\\)} 0x\[0-9a-f\]+ <strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ # unexpected
|
|
||||||
+ xfail "$test (not in libc.so.6)"
|
|
||||||
+ return 0
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+set test "info addr strstr"
|
|
||||||
+gdb_test_multiple $test $test {
|
|
||||||
+ -re "Symbol \"strstr\" is a function at address $addr\\.\r\n$gdb_prompt $" {
|
|
||||||
+ fail "$test (DWARF for strstr)"
|
|
||||||
+ }
|
|
||||||
+ -re "Symbol \"strstr\" is at $addr in a file compiled without debugging\\.\r\n$gdb_prompt $" {
|
|
||||||
+ pass "$test"
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+set test "print strstr second time"
|
|
||||||
+gdb_test_multiple "print strstr" $test {
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} $addr <strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ pass $test
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} $addr <__strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ pass "$test (GDB workaround)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} $addr <__libc_strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ pass "$test (fixed glibc)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {<text gnu-indirect-function variable, no debug info>} $addr <__libc_strstr_ifunc>\r\n$gdb_prompt $" {
|
|
||||||
+ pass "$test (fixed glibc)"
|
|
||||||
+ }
|
|
||||||
+ -re " = {void \\*\\(void\\)} 0x\[0-9a-f\]+ <strstr>\r\n$gdb_prompt $" {
|
|
||||||
+ fail $test
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+gdb_test {print (char *)strstr("abc","b")} { = 0x[0-9a-f]+ "bc"}
|
|
||||||
+gdb_test {print (char *)strstr("def","e")} { = 0x[0-9a-f]+ "ef"}
|
|
3
gdb.spec
3
gdb.spec
@ -926,6 +926,9 @@ fi
|
|||||||
# endif scl
|
# endif scl
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jun 19 2024 Guinevere Larsen <blarsen@redhat.com>
|
||||||
|
- Drop gdb-glibc-strstr-workaround.patch
|
||||||
|
|
||||||
* Tue Jun 18 2024 Kevin Buettner <kevinb@redhat.com>
|
* Tue Jun 18 2024 Kevin Buettner <kevinb@redhat.com>
|
||||||
- Remove gdb-core-open-vdso-warning.patch. This tests added by this
|
- Remove gdb-core-open-vdso-warning.patch. This tests added by this
|
||||||
patch are similar to those of upstream test gdb.base/vdso-warning.exp.
|
patch are similar to those of upstream test gdb.base/vdso-warning.exp.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user