[gdb/f17] [ppc] Fix hardware watchpoints on PowerPC (BZ 827600, Edjunior Machado).
Jan Kratochvil
jankratochvil at fedoraproject.org
Sat Jun 2 13:47:44 UTC 2012
commit 0c6cb6731e970e3449c761b52b4364a8aadb23a0
Author: Jan Kratochvil <jan.kratochvil at redhat.com>
Date: Sat Jun 2 15:47:38 2012 +0200
[ppc] Fix hardware watchpoints on PowerPC (BZ 827600, Edjunior Machado).
gdb-ppc-watchpoint.patch | 50 ++++++++++++++++++++++++++++++++++++++++++++++
gdb.spec | 9 +++++++-
2 files changed, 58 insertions(+), 1 deletions(-)
---
diff --git a/gdb-ppc-watchpoint.patch b/gdb-ppc-watchpoint.patch
new file mode 100644
index 0000000..1556883
--- /dev/null
+++ b/gdb-ppc-watchpoint.patch
@@ -0,0 +1,50 @@
+https://bugzilla.redhat.com/show_bug.cgi?id=827600
+Re: [PATCH] disable ptrace BookE interface for PowerPC server processors
+http://sourceware.org/ml/gdb-patches/2012-05/msg01107.html
+http://sourceware.org/ml/gdb-cvs/2012-05/msg00221.html
+
+### src/gdb/ChangeLog 2012/05/31 18:44:47 1.14306
+### src/gdb/ChangeLog 2012/05/31 22:07:29 1.14307
+## -1,3 +1,9 @@
++2012-05-31 Edjunior Machado <emachado at linux.vnet.ibm.com>
++
++ * ppc-linux-nat.c (have_ptrace_booke_interface): Disable ptrace
++ BookE interface for PowerPC server processors if not available
++ in the Linux Kernel.
++
+ 2012-05-31 Keith Seitz <keiths at redhat.com>
+
+ * linespec.c (decode_objc): Add cleanup to free
+--- src/gdb/ppc-linux-nat.c 2012/05/30 13:37:17 1.112
++++ src/gdb/ppc-linux-nat.c 2012/05/31 22:07:31 1.113
+@@ -1421,17 +1421,20 @@
+ /* Check for kernel support for BOOKE debug registers. */
+ if (ptrace (PPC_PTRACE_GETHWDBGINFO, tid, 0, &booke_debug_info) >= 0)
+ {
+- have_ptrace_booke_interface = 1;
+- max_slots_number = booke_debug_info.num_instruction_bps
+- + booke_debug_info.num_data_bps
+- + booke_debug_info.num_condition_regs;
+- }
+- else
+- {
+- /* Old school interface and no BOOKE debug registers support. */
+- have_ptrace_booke_interface = 0;
+- memset (&booke_debug_info, 0, sizeof (struct ppc_debug_info));
++ /* Check whether ptrace BOOKE interface is functional and
++ provides any supported feature. */
++ if (booke_debug_info.features != 0)
++ {
++ have_ptrace_booke_interface = 1;
++ max_slots_number = booke_debug_info.num_instruction_bps
++ + booke_debug_info.num_data_bps
++ + booke_debug_info.num_condition_regs;
++ return have_ptrace_booke_interface;
++ }
+ }
++ /* Old school interface and no BOOKE debug registers support. */
++ have_ptrace_booke_interface = 0;
++ memset (&booke_debug_info, 0, sizeof (struct ppc_debug_info));
+ }
+
+ return have_ptrace_booke_interface;
diff --git a/gdb.spec b/gdb.spec
index 02cd575..7ed50c8 100644
--- a/gdb.spec
+++ b/gdb.spec
@@ -35,7 +35,7 @@ Version: 7.4.50.%{snap}
# 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: 47%{?dist}
+Release: 48%{?dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain
Group: Development/Debuggers
@@ -622,6 +622,9 @@ Patch689: gdb-autoload-28of28.patch
# Workaround PR libc/14166 for inferior calls of strstr.
Patch690: gdb-glibc-strstr-workaround.patch
+# [ppc] Fix hardware watchpoints on PowerPC (BZ 827600, Edjunior Machado).
+Patch691: gdb-ppc-watchpoint.patch
+
%if 0%{!?rhel:1} || 0%{?rhel} > 6
# RL_STATE_FEDORA_GDB would not be found for:
# Patch642: gdb-readline62-ask-more-rh.patch
@@ -941,6 +944,7 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
%patch688 -p1
%patch689 -p1
%patch690 -p1
+%patch691 -p1
%patch393 -p1
%if 0%{!?el5:1} || 0%{?scl:1}
@@ -1433,6 +1437,9 @@ fi
%endif # 0%{!?el5:1} || "%{_target_cpu}" == "noarch"
%changelog
+* Sat Jun 2 2012 Jan Kratochvil <jan.kratochvil at redhat.com> - 7.4.50.20120120-48.fc17
+- [ppc] Fix hardware watchpoints on PowerPC (BZ 827600, Edjunior Machado).
+
* Mon May 28 2012 Jan Kratochvil <jan.kratochvil at redhat.com> - 7.4.50.20120120-47.fc17
- Workaround PR libc/14166 for inferior calls of strstr.
More information about the scm-commits
mailing list