From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 7EC1C3858C66; Thu, 29 Feb 2024 15:33:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7EC1C3858C66 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1709220817; bh=Cr/4xovBYT4Ggxk6UAm2cI3eXVacthh7sAbFGbAhZjw=; h=From:To:Subject:Date:In-Reply-To:References:From; b=UZS4mWQnbtJV3zX/ul1bco0ad8TRclu4WvpFb0DBP+Depufj4uf4+mtz7ZhE+MBEB IhVlR65W4oGUiwmUTH8/dRz7N9QAeGZ2g6o4cFqINhPug/7QBxRk7de4u0UZqmN9kF GAxFG/LXJOQf3sDffOmvsvDjX8ZEnxaZUa5zXWLM= From: "cvs-commit at gcc dot gnu.org" To: gdb-prs@sourceware.org Subject: [Bug tdep/31418] [gdb/tdep, arm] $tpidruro unavailable Date: Thu, 29 Feb 2024 15:33:36 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gdb X-Bugzilla-Component: tdep X-Bugzilla-Version: HEAD X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://sourceware.org/bugzilla/show_bug.cgi?id=3D31418 --- Comment #3 from Sourceware Commits --- The master branch has been updated by Thiago Bauermann : https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3Dbbb12eb9c84a= a2b32480b7c022c494c2469ef717 commit bbb12eb9c84aa2b32480b7c022c494c2469ef717 Author: Thiago Jung Bauermann Date: Mon Feb 26 19:11:45 2024 -0300 gdb/arm: Remove tpidruro register from non-FreeBSD target descriptions Commit 92d48a1e4eac ("Add an arm-tls feature which includes the tpidruro register from CP15.") introduced the org.gnu.gdb.arm.tls feature, which adds the tpidruro register, and unconditionally enabled it in aarch32_create_target_description. In Linux, the tpidruro register isn't available via ptrace in the 32-bit kernel but it is available for an aarch32 program running under an arm64 kernel via the ptrace compat interface. This isn't currently implement= ed however, which causes GDB on arm-linux with 64-bit kernel to list the register but show it as unavailable, as reported by Tom de Vries: $ gdb -q -batch a.out -ex start -ex 'p $tpidruro' Temporary breakpoint 1 at 0x512 Temporary breakpoint 1, 0xaaaaa512 in main () $1 =3D Simon Marchi then clarified: > The only time we should be seeing some "unavailable" registers or mem= ory > is in the context of tracepoints, for things that are not collected. > Seeing an unavailable register here is a sign that something is not > right. Therefore, disable the TLS feature in aarch32 target descriptions for L= inux and NetBSD targets (the latter also doesn't seem to support accessing tpidruro either, based on a quick look at arm-netbsd-nat.c). This patch fixes the following tests: Running gdb.base/inline-frame-cycle-unwind.exp ... FAIL: gdb.base/inline-frame-cycle-unwind.exp: cycle at level 3: backtra= ce when the unwind is broken at frame 3 FAIL: gdb.base/inline-frame-cycle-unwind.exp: cycle at level 5: backtra= ce when the unwind is broken at frame 5 FAIL: gdb.base/inline-frame-cycle-unwind.exp: cycle at level 1: backtra= ce when the unwind is broken at frame 1 Tested with Ubuntu 22.04.3 on armv8l-linux-gnueabihf in native, native-gdbserver and native-extended-gdbserver targets with no regressi= ons. PR tdep/31418 Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=3D31418 Approved-By: John Baldwin --=20 You are receiving this mail because: You are on the CC list for the bug.=