From nobody Wed May 27 14:59:18 2026 X-Original-To: dev-commits-src-main@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 4gQXp40s2qz6f8rQ for ; Wed, 27 May 2026 14:59:24 +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 "R13" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gQXp36l7nz3HLq for ; Wed, 27 May 2026 14:59:23 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1779893964; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dq2g9OVzes1aELdiSOfdn/f30/0W5C6JQ+FlsxnTigU=; b=aoGN1RYrrfSrzKq+3JnuIdYDKF72bhYWBYv3Vv6oK99toZCcAYTxCHQsEb4xnWZe1gicil x/pUZitoL0glTi9CS4v+gr8g2zRyhkxmfUE6QMsDWpNkp8bss80VE0QBC/RGROP0l0THIw NNMD+3w2OJ8D89P6C7WQl98FthINL7iEuJ+BTPCVW0R/FVG43PuztQcK7NoguGUcWUMtTq xn5dp4osbcmY5bQpRu4bHRkh9ZCX18jYZm/GLjmyifbTLmQ2XtDVP8kd6/WRetjZrnp4cM OQUFGfizN8Z486XvsvuhoC4wK2DxgUsqJfqMnXblPu2WgcydQ39AM2zFyZxZQA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1779893963; a=rsa-sha256; cv=none; b=H3JkLT80Jhf5EoeyrYZNu9USP0CYEJeHwKsmjpt5FmJbtVx7TVgyE4CFJOf3ynsc/1Nuig ZcpC5PC1bVGjfidTUeF8scss/jsDnQbFYN731c0CFWaalSZJD0YPxyCr2++rrCW5+UcitZ qMHFfSt8bCG45xBsqvS6COrG+jmtwtu/geThpBCWXuRdFC+25Bzw3DqU8pu76mw3n3qcJ/ KThbr9uFaw7wgLU1vRzH/nWALuw9pxrujXeQ0CbE9gYQDzXDn8/DxrPyMx6YXglJVAGGbI o+A9tzW3F4KrkV845TfV9Eo9xVTSUrPXZIND6e6WdPP9QlVupWX8ZfekHGfuvQ== 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=1779893963; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=dq2g9OVzes1aELdiSOfdn/f30/0W5C6JQ+FlsxnTigU=; b=ZcsVHENsPyfecullFSLeKMrQrcs0A4LmTrHSpi06A7P1bctAGFXR5qy32TdW7it69wdTQ2 ys69duiK5M91OPm1zJQjlCtDrfmqcqEOz0RMZUHc06QzT5JO9ESLNBsB4Ld0cGpUEZgnj3 SLMiQFjykzjzYhwIXEFszWYnTvNHxPEP0z7Q0y+iIZcZrmVL7uXwPS2FHh/oWX+gM4U+75 /ZB0jpQZYwR/cJJgNok9+CdP0+bljn1WOqEXG1qbIlEIdV3ckebx0Of9SzJog1qpSY0vqj M+g0kkGcGs79DuFkI9TKEXr62FWQFGn0hm7CatO4BrNCrhbpODSD/jYkC0UKQw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4gQXp368JPz1460 for ; Wed, 27 May 2026 14:59:23 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 22d42 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Wed, 27 May 2026 14:59:18 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org Cc: Alfredo Mazzinghi From: John Baldwin Subject: git: a1e07f21dc74 - main - arm64: Adjust the kernel stack pointer at the end of fork_trampoline List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: jhb X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: a1e07f21dc7458d85bd0d04c294f0389d4591666 Auto-Submitted: auto-generated Date: Wed, 27 May 2026 14:59:18 +0000 Message-Id: <6a1706c6.22d42.2f82f92c@gitrepo.freebsd.org> The branch main has been updated by jhb: URL: https://cgit.FreeBSD.org/src/commit/?id=a1e07f21dc7458d85bd0d04c294f0389d4591666 commit a1e07f21dc7458d85bd0d04c294f0389d4591666 Author: Alfredo Mazzinghi AuthorDate: 2026-04-22 23:46:14 +0000 Commit: John Baldwin CommitDate: 2026-05-27 13:43:09 +0000 arm64: Adjust the kernel stack pointer at the end of fork_trampoline All other paths that return from the kernel to userspace pop the user trapframe off of the kernel stack pointer before returning to userspace in restore_registers. fork_trampoline was missing this, so all of the user faults after fork pushed another trapframe leaving a trapframe's worth of wasted space on the kstack. This would be fatal after a future change to remove duplicate initialization of td_frame in cpu_fork() as without this fix each time a thread was recycled it would "lose" another trapframe's worth of space. Reviewed by: kib, andrew Pull Request: https://ron-dev.freebsd.org/FreeBSD/src/pulls/23 --- sys/arm64/arm64/swtch.S | 2 ++ 1 file changed, 2 insertions(+) diff --git a/sys/arm64/arm64/swtch.S b/sys/arm64/arm64/swtch.S index b3bf88135e57..0cc0d7462ae6 100644 --- a/sys/arm64/arm64/swtch.S +++ b/sys/arm64/arm64/swtch.S @@ -276,6 +276,8 @@ ENTRY(fork_trampoline) ldp x26, x27, [sp, #TF_X + 26 * 8] ldp x28, x29, [sp, #TF_X + 28 * 8] + add sp, sp, #(TF_SIZE) + /* * No need for interrupts reenabling since PSR * will be set to the desired value anyway.