From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Mon, 17 Aug 2026 16:20:00 +0200 Received: from mx1.white.stw.pengutronix.de ([2a0a:edc0:0:b01:1d::107]) by lore.white.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wvyBz-0049ru-2R for lore@lore.pengutronix.de; Mon, 17 Aug 2026 16:20:00 +0200 Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) by mx1.white.stw.pengutronix.de (Postfix) with ESMTPS id 53E8C2003DE for ; Mon, 17 Aug 2026 16:20:00 +0200 (CEST) Authentication-Results: mx1.white.stw.pengutronix.de; dkim=pass header.d=lists.infradead.org header.s=bombadil.20210309 header.b=Qw8NNxkB; dmarc=none; spf=pass (mx1.white.stw.pengutronix.de: domain of "barebox-bounces+lore=pengutronix.de@lists.infradead.org" designates 2607:7c80:54:3::133 as permitted sender) smtp.mailfrom="barebox-bounces+lore=pengutronix.de@lists.infradead.org" DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=haUgqqCJt9FBZt+ZX8Aci06IzvXrqzRnIeZbxdWKhtM=; b=Qw8NNxkBKESQ7pNb7u7/3C+oxy 4MZFiLMWs0ksySCD6ELJPIpdWxKR+T4PlNKLWLavELpe6OcDwVPZnoTccGdferV2mlSKEjmUV+z4o viTbBnxiUuuAqRvME0IsCecL9tE2IwBJeJMbk+gyikOygc5yi0OYH9gWEtA/Aposqg7nAbXOuxV1k iyUyTVUmyGKRWr4MSYXpWQXZ3wsjnAu709GwdDpLQ8G6GIWtvX5p6pyQ15o5OxdeMDIKIeL3Cmws5 Hf7RjyiH3Lruw42w/igmWZe2tokrBQOfeLULV+uVEmW0Jym5LlCoex4wr+2VqtXoVrJGH3S5ilMZs d7oHF81Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wvxu3-00000006G4N-1LTH; Mon, 17 Aug 2026 14:01:27 +0000 Received: from mx1.white.stw.pengutronix.de ([185.203.200.13]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wvxty-00000006G17-2HWO for barebox@lists.infradead.org; Mon, 17 Aug 2026 14:01:25 +0000 Received: from drehscheibe.grey.stw.pengutronix.de (drehscheibe.grey.stw.pengutronix.de [IPv6:2a0a:edc0:0:c01:1d::a2]) (Authenticated sender: relay-from-drehscheibe.grey.stw.pengutronix.de) by mx1.white.stw.pengutronix.de (Postfix) with ESMTPSA id C3BE5200444; Mon, 17 Aug 2026 16:01:18 +0200 (CEST) Received: from dude05.red.stw.pengutronix.de ([2a0a:edc0:0:1101:1d::54]) by drehscheibe.grey.stw.pengutronix.de with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wvxtu-001xrp-2A; Mon, 17 Aug 2026 16:01:18 +0200 Received: from [::1] (helo=dude05.red.stw.pengutronix.de) by dude05.red.stw.pengutronix.de with esmtp (Exim 4.98.2) (envelope-from ) id 1wvxtu-0000000F1aR-2RcT; Mon, 17 Aug 2026 16:01:18 +0200 From: Stefan Kerkmann Date: Mon, 17 Aug 2026 16:01:12 +0200 Subject: [PATCH v3 1/8] RISC-V: setup_c: avoid clearing BSS twice MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260817-feature-pbl-get-time-ns-v3-1-9874c1438855@pengutronix.de> References: <20260817-feature-pbl-get-time-ns-v3-0-9874c1438855@pengutronix.de> In-Reply-To: <20260817-feature-pbl-get-time-ns-v3-0-9874c1438855@pengutronix.de> To: Sascha Hauer , "open list:BAREBOX" Cc: Stefan Kerkmann X-Mailer: b4 0.15.2 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260817_070122_744242_2C06B77D X-CRM114-Status: UNSURE ( 7.86 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -1.9 (-) X-Spam-Report: Spam detection software, running on the system "bombadil.infradead.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: This commit duplicates what is already implemented for ARM(64)[1]. Currently setup_c() isn't called twice but might be in the future. [1]: 11c389397c ("ARM: setup_c: avoid clearing BSS twice") Signed-off-by: Stefan Kerkmann --- arch/riscv/lib/setupc.S | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) Content analysis details: (-1.9 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_HELO_PASS SPF: HELO matches SPF record -0.0 SPF_PASS SPF: sender matches SPF record -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] 0.0 DMARC_MISSING Missing DMARC policy X-BeenThere: barebox@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "barebox" X-Rspamd-Action: no action X-Rspamd-Server: mx1 X-Stat-Signature: 35n66e4f3pn3srrkw4hs3nq41ju5cant X-Spamd-Result: default: False [-7.71 / 15.00]; BAYES_HAM(-3.00)[99.99%]; DWL_DNSWL_MED(-2.00)[infradead.org:dkim]; KNOWN_LIST_ID(-1.00)[barebox.lists.infradead.org]; RCVD_DKIM_ARC_DNSWL_MED(-0.50)[]; RCVD_IN_DNSWL_MED(-0.40)[2607:7c80:54:3::133:from,2a0a:edc0:0:1101:1d::54:received]; R_SPF_ALLOW(-0.20)[+mx:c]; MAILLIST(-0.20)[mailman]; R_DKIM_ALLOW(-0.20)[lists.infradead.org:s=bombadil.20210309]; RCVD_IN_DNSWL_LOW(-0.10)[2a0a:edc0:0:c01:1d::a2:received]; MIME_GOOD(-0.10)[text/plain]; HAS_LIST_UNSUB(-0.01)[]; RCVD_TLS_LAST(0.00)[]; TO_DN_ALL(0.00)[]; FORWARDED(0.00)[barebox@lists.infradead.org]; ARC_NA(0.00)[]; RECEIVED_HELO_LOCALHOST(0.00)[]; MIME_TRACE(0.00)[0:+]; DMARC_NA(0.00)[pengutronix.de]; TAGGED_FROM(0.00)[lore=pengutronix.de]; RCPT_COUNT_THREE(0.00)[3]; FORGED_SENDER(0.00)[s.kerkmann@pengutronix.de,barebox-bounces@lists.infradead.org]; FORGED_SENDER_FORWARDING(0.00)[]; FROM_NEQ_ENVFROM(0.00)[s.kerkmann@pengutronix.de,barebox-bounces@lists.infradead.org]; FROM_HAS_DN(0.00)[]; DKIM_TRACE(0.00)[lists.infradead.org:+]; RCVD_COUNT_FIVE(0.00)[5]; MID_RHS_MATCH_FROM(0.00)[]; NEURAL_HAM(-0.00)[-1.000]; ASN(0.00)[asn:7247, ipnet:2607:7c80:54::/48, country:US]; RCVD_VIA_SMTP_AUTH(0.00)[]; FORGED_SENDER_MAILLIST(0.00)[] X-Rspamd-Queue-Id: 53E8C2003DE This commit duplicates what is already implemented for ARM(64)[1]. Currently setup_c() isn't called twice but might be in the future. [1]: 11c389397c ("ARM: setup_c: avoid clearing BSS twice") Signed-off-by: Stefan Kerkmann --- arch/riscv/lib/setupc.S | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/arch/riscv/lib/setupc.S b/arch/riscv/lib/setupc.S index 423de4181e..5370e8a48e 100644 --- a/arch/riscv/lib/setupc.S +++ b/arch/riscv/lib/setupc.S @@ -10,13 +10,30 @@ */ .section .text.setup_c ENTRY(setup_c) + addi sp, sp, -SZREG * 2 + REG_S ra, SZREG(sp) + lla a0, bss_cleared + lw a1, 0(a0) + bnez a1, zeroed lla a0, __bss_start li a1, 0 lla a2, __bss_stop sub a2, a2, a0 - j __memset + jal __memset + lla a0, bss_cleared + li a1, 1 + sw a1, 0(a0) +zeroed: + REG_L ra, SZREG(sp) + addi sp, sp, SZREG * 2 + ret ENDPROC(setup_c) +.section .data.bss_cleared +.balign 4 +bss_cleared: + .word 0 + /* * void relocate_to_adr(unsigned long targetadr) * -- 2.47.3