From nobody Thu Apr 17 21:59:12 2025 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 4ZdsHN4K59z5sqvq; Thu, 17 Apr 2025 21:59: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 "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4ZdsHN2sX2z3Tx8; Thu, 17 Apr 2025 21:59:12 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1744927152; 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=sduElGHA9/L5HufBw6jPmRSmQHe58XK2TCZ1Tf+bZZ8=; b=Y+hNcRfGUnc6zIWofHvCZggCF7FNhSY33VTND7y2acH4IYfWP5bPYRz3lFtjlV5jiB2od7 yf4M1hPUxLLlx6tQ8TtX5my/LkhmdosgNFDOMG8dsVaPSWSn6mtcWcwUfKwBOwz7x28hI8 BQyRoCO35WndesNhRNt2LRau65kkQ9LC02kjAbTaEtvIyPhZrLuTfeTDI+u7/QuYUyJe3D p7YK8fSULMqArI8ASTAzVB2++GYT1ZzMu+4hfnsA+zmBPGPOIQnEbCbTdOKnnXhcvWiz41 JkziMPsa01VREMWaQlr62q34438UBTDwy+pWQcw/4EN4v5SnmAtqAIK/ClNj0w== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1744927152; a=rsa-sha256; cv=none; b=Fxiy718lSST0pWtAixhgxKR0ZRetxbRqUbIxX7Kj3+hkPal+k0YjY/Xn9sly1CZesQr9iM DyRuAUlJ/owCZ4X3Jq8QMjlIbAgA7llOZCVm/Pa7fXM3IsT9w0aFT4UhpodKvQM1+t0pYs AEoH3at6i9Os35ez/Jg0C2LHHPxbv1Q52lzpj6hKA7UDS22hkevQP79sh38/916Wb7r4es NdutmLjMMJern+U7c7plvEmDDGE2sf3rU51Wb8PAAj3KDZr8UdALh5DgWiO6K0TEci4OXA IqtJcDDd3Gl0E+A3VyrFrSZB/NsMsGSjQ5omq8s2t8M240tx33I8qvlFaFvMEw== 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=1744927152; 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=sduElGHA9/L5HufBw6jPmRSmQHe58XK2TCZ1Tf+bZZ8=; b=GY7Z51w7wJcIT/2fcgaoQ3aL2yRv7dxs/FGnN7FUNsxk8z0SEAkIvQeChY4dLTh81iU3il hYTwidjORez7mv/S/L6vz9rIIlQypXbe/6h12016IF1aDHLpWnGY5yZdubkq3024HPiaeM +9hYcjqOsJDZyqCFds68ZerjFPtUStgFiKkuzVDSfs92uHc+PUMHoVA8ymf+Kp/wvrxKWZ vxa2Ck4jIB7B1DErozKPPWveeYxb3mISNJsWQesCGxXLTqa4Szv0iCg9C3g8iXcKS2Vae/ Db7X3U9RBkaLyoQrWXlQs6iNRBtR48H7koEVkGO/XsGZIZ3Wt91Jwz7trcH+Cg== 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 4ZdsHN2L1rz15mV; Thu, 17 Apr 2025 21:59:12 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 53HLxCtR002595; Thu, 17 Apr 2025 21:59:12 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 53HLxCha002592; Thu, 17 Apr 2025 21:59:12 GMT (envelope-from git) Date: Thu, 17 Apr 2025 21:59:12 GMT Message-Id: <202504172159.53HLxCha002592@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Warner Losh Subject: git: f0f44cdb69c1 - main - kboot: Save the upper limit of the call stack. 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: imp X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: f0f44cdb69c16842cec5c8b0716edeff214eebf6 Auto-Submitted: auto-generated The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=f0f44cdb69c16842cec5c8b0716edeff214eebf6 commit f0f44cdb69c16842cec5c8b0716edeff214eebf6 Author: Warner Losh AuthorDate: 2025-04-17 04:03:48 +0000 Commit: Warner Losh CommitDate: 2025-04-17 21:56:45 +0000 kboot: Save the upper limit of the call stack. The location of argc argument is a fine limit for the extent of the stack traceback. We could save the location of return address for the call to _start_c, but we'd have to move that into MD assembler. While not hard, it wouldn't improve the traces we can get. And the math to find it is architecture dependent (though the same for both arm64 and amd64). Sponsored by: Netflix Reviewed by: kevans, andrew, jhibbits Differential Revision: https://reviews.freebsd.org/D49858 --- stand/kboot/libkboot/crt1.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/stand/kboot/libkboot/crt1.c b/stand/kboot/libkboot/crt1.c index 2fbe00262da7..67ddacccfd26 100644 --- a/stand/kboot/libkboot/crt1.c +++ b/stand/kboot/libkboot/crt1.c @@ -57,6 +57,8 @@ extern int main(int, const char **, char **); #include "start_arch.h" +void *stack_upper_limit; + void _start_c(long *p) { @@ -64,6 +66,7 @@ _start_c(long *p) const char **argv; char **envp; + stack_upper_limit = p; /* Save the upper limit of call stack */ argc = p[0]; argv = (const char **)(p + 1); envp = (char **)argv + argc + 1;