From nobody Mon Mar 18 16:37:57 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tz0s15yYYz5F3qR; Mon, 18 Mar 2024 16:37:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tz0s14Wg0z4lCd; Mon, 18 Mar 2024 16:37:57 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710779877; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DQqLqlBkiAiOrF7V/hG2OX6apEmFuaGeRs1tmm2b1n0=; b=weElYrs7yRMoYx53IRfSBTqf+v48mHRlFZ2S5DKKXKt37AzgB2gx6ILvgUXN6lKh4e6E55 ivYMmdMuO7kiXYKV2NZr/LzuH2sU4p4Ogpn8sfXQXRFogYhzCL1OCQ6GuSsyWwNo4kqpJz fNblfe6kfyAaCjHe9Y0a4iRUz1yCPusN9vDYuqWCPdrjPPppoFgxiS5oA1yaL9DApOJ6jM xUTdIwFH+Ah8ZvtPOzKhAXDWARx5BqnNcAqn6bl5PF3yr97j6RGUlLwZ2ag26goVKjJQgj CHgnWFy5m7HkTpQhidcNbybBhldUB00knltZq4WG+vY2Vcsj/xHc7DG6vmr3HA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1710779877; a=rsa-sha256; cv=none; b=oPLEAVes18+j9yrmopbWpXpYmNwCtzZJsMQpkAZeBA2Nrj7SzuJFkZbv5m6gpckU6otvJi CVR2vGjjX70gcNem6lk05e6TY6NALEpm10oT3qvZRxke9ZRuXOUTfcc67RHki6UJxlJfoj HoW2dIR5wrvYIe9ikjIkcx6+b3ax6Np4GQzgeZEyQI2RFTzDQo3+t97Smek2Eof0jNVen7 5ajce1+glBA7Ntp6uhizW9JKKM0sfJqkNrD5zl9YapLl1eW0MbVKZUuAqIKQBTfO5CtNbB TV664EmOXxJVDR4K0bmHj9QjV/ty2gywDHujwUjeb6I3PAL+9XaYhFuFR6ojpA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1710779877; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=DQqLqlBkiAiOrF7V/hG2OX6apEmFuaGeRs1tmm2b1n0=; b=BfLQ+qEUR9A52qgMd7E6RoM64OJbdBEguWxy9eIAyFxTA0oszChQGTrsjT/bcA0WKxqAhx J+MmOYG9z74NQDOoy+K/LzxQq7S++1MSWazHx25/2EIkr7STVe+4xx0lQtnWXR3Wj8kJzf kNDtNaTiP28BHJhi+DFV2ob5gft+FRQSsy1wRKb2dE/Ll+6RGvKyHsaBkpUGO0VaohnNl0 epLIHTStjZxPaNX1JyLKUstg3+3OBprC5HnTMLSaAZ99uUuXjktEW4FfcLGz+0m47Yvy7y dR8SYa6tzxh+gyIk4hXnfaXCsS3oA0Jrc5qWVaYBgO5vz1/x5Pl+i1BpIfgcnA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Tz0s1425QzWmf; Mon, 18 Mar 2024 16:37:57 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 42IGbvKg071136; Mon, 18 Mar 2024 16:37:57 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 42IGbv60071133; Mon, 18 Mar 2024 16:37:57 GMT (envelope-from git) Date: Mon, 18 Mar 2024 16:37:57 GMT Message-Id: <202403181637.42IGbv60071133@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Andrew Turner Subject: git: 0a5f7918fc0e - main - arm64: Return all registers to gdb when able List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: andrew X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 0a5f7918fc0e274a904b8fdd7c167bea7cdaf0f4 Auto-Submitted: auto-generated The branch main has been updated by andrew: URL: https://cgit.FreeBSD.org/src/commit/?id=0a5f7918fc0e274a904b8fdd7c167bea7cdaf0f4 commit 0a5f7918fc0e274a904b8fdd7c167bea7cdaf0f4 Author: Andrew Turner AuthorDate: 2024-03-14 17:31:39 +0000 Commit: Andrew Turner CommitDate: 2024-03-18 16:22:18 +0000 arm64: Return all registers to gdb when able When the kdb thread is the current thread we read the registers from the trap frame. As this contains all general purpose registers we can use it to read these in the gdb stub. This allows us to include the non-callee saved registers, e.g. function arguments. Reviewed by: imp Sponsored by: Arm Ltd Differential Revision: https://reviews.freebsd.org/D44360 --- sys/arm64/arm64/gdb_machdep.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/arm64/arm64/gdb_machdep.c b/sys/arm64/arm64/gdb_machdep.c index f93d7f83bd9d..dcfc91b33eb7 100644 --- a/sys/arm64/arm64/gdb_machdep.c +++ b/sys/arm64/arm64/gdb_machdep.c @@ -55,6 +55,10 @@ gdb_cpu_getreg(int regnum, size_t *regsz) case GDB_REG_SP: return (&kdb_frame->tf_sp); case GDB_REG_PC: return (&kdb_frame->tf_elr); case GDB_REG_CSPR: return (&kdb_frame->tf_spsr); + default: + if (regnum >= GDB_REG_X0 && regnum <= GDB_REG_X29) + return (&kdb_frame->tf_x[regnum - GDB_REG_X0]); + break; } } switch (regnum) {