From nobody Thu Apr 2 02:17:11 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 4fmQV03S5Gz6WK5f for ; Thu, 02 Apr 2026 02:17:12 +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 4fmQV00JQ1z3FLd for ; Thu, 02 Apr 2026 02:17:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1775096232; 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=LJ3q17TbWdRzGRqWgY7xe9sWsiJEs7Uru/+3ccUBzpw=; b=j2xXawnkgbz/otzNrrEtgokGBDTiOhWO97WkeknIPjJddaZRhcau2owWPvGFgxAIBMGELx yhn8Zl27p7AFVCr9YoXboQZEe1zwN8x4OaAucwUbDevT8mciRB4xkOCV/+N0RBzCdvOxtB K6dBjvadsgimLEZW02PHTss185rqC1S+pofA0R2v9BmaHKp7tZr7rQtT2hvAFO0QKRo3U+ +UQMH1zhYdYhGNC66rOaHn9nrSMHN48iabxSY1N4RoSAEQecvig+lXITCyBdQsF87iG13m tjBQdOq6pu8NSRysH4EVZiKvRLBFqVbvJUYfO+nzdn2uszFW54gZtktXxiwSqg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1775096232; a=rsa-sha256; cv=none; b=k2qgSwqp8zf4kRurwYXU5PlK93kcjYc+EwryP7FcZxI7GuLiL0cflbXl02C1lDYdf+aZSt 5BhNbRhe6KtJO/fk+cRaLSKct9riG/d+dcofYJHhNGN0T48dLC7573iCrzZlSaLWPe0KHw S3WeY+EXcrDFnUnawtwgSUfPOFXKEmIElh5AiZE4OUq4HbjjDxmHGqL96cX/5O7ZhMkG1N e9kPVFsrEzgabrLUw801Q9WLTHSTm+6EWC5evEATITITpwXLL29IG8uJNXUQ8bz57hUg5+ RpvpVfie+nNQ0wPm3v5Mh9Pca8Bgrj0Bams61etO6F7YoagS7+yROYwD4OZI7w== 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=1775096232; 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=LJ3q17TbWdRzGRqWgY7xe9sWsiJEs7Uru/+3ccUBzpw=; b=OlT7iAldPTqbo0jcREXPcAm7hOKFEvqO9if62MdYk5VDJBI5CT4PDEUH9t2TdJ56KrKH1C 9KlfbGwn05+QqGChoJVpCF+3775XyiDsuk/0gaFJUn0rMgTQ7zwg+c1bmYffsSg12Ecv3I S3+RYP317vYnY75cuvonV2l0eteJlv+e0Iz1KWul42k9i+O26J2m7ZjeFgNXR0jo0IWgrl fV+U3kc8PT/RPVkKC9dCBN4CqSBuS+r5vE6XNAO8oQ3rISc8kvP5sJ2W3jM0L2em9TB0eE nK2KRYEbjFCBJ+yBZHRxzuAH4ZEI41vY8sZ+ifol/j8hERPxbJgZbHKir41whQ== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4fmQTz6hxDzjQh for ; Thu, 02 Apr 2026 02:17:11 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 300e0 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Thu, 02 Apr 2026 02:17:11 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Konstantin Belousov Subject: git: de344ffd0ace - stable/15 - amd64 sendsig(): explicitly copy registers from trapframe to ucontext 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/stable/15 X-Git-Reftype: branch X-Git-Commit: de344ffd0ace0f5812f09d20fbb1767374b439ae Auto-Submitted: auto-generated Date: Thu, 02 Apr 2026 02:17:11 +0000 Message-Id: <69cdd1a7.300e0.2696e36f@gitrepo.freebsd.org> The branch stable/15 has been updated by kib: URL: https://cgit.FreeBSD.org/src/commit/?id=de344ffd0ace0f5812f09d20fbb1767374b439ae commit de344ffd0ace0f5812f09d20fbb1767374b439ae Author: Konstantin Belousov AuthorDate: 2026-03-29 08:06:29 +0000 Commit: Konstantin Belousov CommitDate: 2026-04-02 02:13:50 +0000 amd64 sendsig(): explicitly copy registers from trapframe to ucontext (cherry picked from commit 7d1285e904aa76ac821ac2a6a8eb61be598f0e88) --- sys/amd64/amd64/exec_machdep.c | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/sys/amd64/amd64/exec_machdep.c b/sys/amd64/amd64/exec_machdep.c index a4880175990f..dddf9eb59223 100644 --- a/sys/amd64/amd64/exec_machdep.c +++ b/sys/amd64/amd64/exec_machdep.c @@ -143,7 +143,34 @@ sendsig(sig_t catcher, ksiginfo_t *ksi, sigset_t *mask) sf.sf_uc.uc_stack.ss_flags = (td->td_pflags & TDP_ALTSTACK) ? ((oonstack) ? SS_ONSTACK : 0) : SS_DISABLE; sf.sf_uc.uc_mcontext.mc_onstack = (oonstack) ? 1 : 0; - bcopy(regs, &sf.sf_uc.uc_mcontext.mc_rdi, sizeof(*regs)); + sf.sf_uc.uc_mcontext.mc_rdi = regs->tf_rdi; + sf.sf_uc.uc_mcontext.mc_rsi = regs->tf_rsi; + sf.sf_uc.uc_mcontext.mc_rdx = regs->tf_rdx; + sf.sf_uc.uc_mcontext.mc_rcx = regs->tf_rcx; + sf.sf_uc.uc_mcontext.mc_r8 = regs->tf_r8; + sf.sf_uc.uc_mcontext.mc_r9 = regs->tf_r9; + sf.sf_uc.uc_mcontext.mc_rax = regs->tf_rax; + sf.sf_uc.uc_mcontext.mc_rbx = regs->tf_rbx; + sf.sf_uc.uc_mcontext.mc_rbp = regs->tf_rbp; + sf.sf_uc.uc_mcontext.mc_r10 = regs->tf_r10; + sf.sf_uc.uc_mcontext.mc_r11 = regs->tf_r11; + sf.sf_uc.uc_mcontext.mc_r12 = regs->tf_r12; + sf.sf_uc.uc_mcontext.mc_r13 = regs->tf_r13; + sf.sf_uc.uc_mcontext.mc_r14 = regs->tf_r14; + sf.sf_uc.uc_mcontext.mc_r15 = regs->tf_r15; + sf.sf_uc.uc_mcontext.mc_trapno = regs->tf_trapno; + sf.sf_uc.uc_mcontext.mc_fs = regs->tf_fs; + sf.sf_uc.uc_mcontext.mc_gs = regs->tf_gs; + sf.sf_uc.uc_mcontext.mc_addr = regs->tf_addr; + sf.sf_uc.uc_mcontext.mc_flags = regs->tf_flags; + sf.sf_uc.uc_mcontext.mc_es = regs->tf_es; + sf.sf_uc.uc_mcontext.mc_ds = regs->tf_ds; + sf.sf_uc.uc_mcontext.mc_err = regs->tf_err; + sf.sf_uc.uc_mcontext.mc_rip = regs->tf_rip; + sf.sf_uc.uc_mcontext.mc_cs = regs->tf_cs; + sf.sf_uc.uc_mcontext.mc_rflags = regs->tf_rflags; + sf.sf_uc.uc_mcontext.mc_rsp = regs->tf_rsp; + sf.sf_uc.uc_mcontext.mc_ss = regs->tf_ss; sf.sf_uc.uc_mcontext.mc_len = sizeof(sf.sf_uc.uc_mcontext); /* magic */ get_fpcontext(td, &sf.sf_uc.uc_mcontext, &xfpusave, &xfpusave_len); update_pcb_bases(pcb);