From nobody Fri Mar 13 22:51:07 2026 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 4fXfq023G1z6VvRb for ; Fri, 13 Mar 2026 22:51:08 +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 "R12" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4fXfq00J9Mz3vGk for ; Fri, 13 Mar 2026 22:51:08 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1773442268; 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=akf6LJRtIZwaPPcSP2wR0sBUr3ZTtTQU6S6kWZxy9XM=; b=yC3ZPL+W/DpmhxY2287uN4ZG9YIPQn0754yi9Ycj9DiUMg2Z9axc0KNbb1Pb7XJoyOI/el kPEvZKgv01fB54anPT96YVcTmoeqeSXbL2YSK+b4GtX7/WcoG2NN8RZ/5mzvujZYkyPFm1 ys3fPh1SQXNnn05iy4S34KxZH7mLY9Ljoy4xetnaxjloGu1FXnJdCyo178pkCR+zuCAGY/ Kupk1m4Vp8e5sNA5tFGusAZ5HC0a8Sn0hukLP/M2VnViiq7OuLZFO7WJWDqTrS1YSBLxoO WwcXM7mjJlnZfcg/FWAOY0df1p3P+U9poSQ+qW4yEt/ki4695wsI1s/Lh7gFxA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1773442268; a=rsa-sha256; cv=none; b=aV1xDOUQ5Uu1D0nKoF99Rhe7CkHvRLXbACovFOj7kBmIPO/OPhCfKsi+fiDARv8WvDfAv+ aDvkGinFyhBHDV+R+mI04RC2wiScKYTVCnvD8291dsHg6PMT7h7LdD0IlFyXb1gECnG2pW xnvyoHisVsARiJfSY76B4RIG7b8KKrk+8BiPMSaCSplMDSWipDwX6jfDt9PrByNW9k0Upi ITVGA54c3B4BdNx4HKjhEhqCzwmZBs0P+OiWoOWrNnSH8k3G0pZcW2KPFvFWihnrjro/sH /rVL3jU2zmexPp5OxdVeuYawmZ2vuPJIl4YX+w1rC5a0hV1h5thIq12kaVkGqA== 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=1773442268; 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=akf6LJRtIZwaPPcSP2wR0sBUr3ZTtTQU6S6kWZxy9XM=; b=jq7fbKHgqvEGmPU4phEm3kk/0x+OC7vgxtwVYGO8qVNeHwkv5UL8tfGYPB1ThQstE7XanM osJ12fVr3lPtALWyHEiIGze648APLztjzpRzLRVdIiCDWda5tQnk5btXIIcxVBhAyKU14T ZO7bPkzZ92XSjECqrO3U43D726RVtwY3w8phI5hWbs3dCiH/BK+lm/dJ50bhutj/5tIPfC 7grhnPJ0TbZaR9aHEaPtLfZGPu5zq+jA8RvwfPxu033iWL3Z9CjUoW8x8lw31+fuFSAEyn 88MF6aGW55FAPpYbxgjNhPg5D2fprWku139mH0ho2I3T5O+jB00DudjZvrjfUw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fXfpz70wmzs51 for ; Fri, 13 Mar 2026 22:51:07 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 1d642 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 13 Mar 2026 22:51:07 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Konstantin Belousov Subject: git: d92ebde76430 - main - amd64: move code to clear PSL_T on debug exception into a helper 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: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: kib X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: d92ebde76430e99f78156fb1d865a18916380aed Auto-Submitted: auto-generated Date: Fri, 13 Mar 2026 22:51:07 +0000 Message-Id: <69b494db.1d642.4dc35392@gitrepo.freebsd.org> The branch main has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=d92ebde76430e99f78156fb1d865a18916380aed commit d92ebde76430e99f78156fb1d865a18916380aed Author: Konstantin Belousov AuthorDate: 2026-03-12 09:40:44 +0000 Commit: Konstantin Belousov CommitDate: 2026-03-13 22:47:13 +0000 amd64: move code to clear PSL_T on debug exception into a helper Reviewed by: jhb Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D55827 --- sys/amd64/amd64/trap.c | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/sys/amd64/amd64/trap.c b/sys/amd64/amd64/trap.c index a4676f156431..4bf56226d076 100644 --- a/sys/amd64/amd64/trap.c +++ b/sys/amd64/amd64/trap.c @@ -242,6 +242,17 @@ trap_check_efirt(struct thread *td, struct trapframe *frame) return (false); } +static void +trap_clear_step(struct thread *td, struct trapframe *frame) +{ + PROC_LOCK(td->td_proc); + if ((td->td_dbgflags & TDB_STEP) != 0) { + td->td_frame->tf_rflags &= ~PSL_T; + td->td_dbgflags &= ~TDB_STEP; + } + PROC_UNLOCK(td->td_proc); +} + /* * Table of handlers for various segment load faults. */ @@ -388,14 +399,8 @@ trap(struct trapframe *frame) signo = SIGTRAP; ucode = TRAP_TRACE; dr6 = rdr6(); - if ((dr6 & DBREG_DR6_BS) != 0) { - PROC_LOCK(td->td_proc); - if ((td->td_dbgflags & TDB_STEP) != 0) { - td->td_frame->tf_rflags &= ~PSL_T; - td->td_dbgflags &= ~TDB_STEP; - } - PROC_UNLOCK(td->td_proc); - } + if ((dr6 & DBREG_DR6_BS) != 0) + trap_clear_step(td, frame); break; case T_ARITHTRAP: /* arithmetic trap */