From patchwork Wed Nov 29 13:57:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Xiang W X-Patchwork-Id: 1869698 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (2048-bit key; secure) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=enqMGEwB; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=126.com header.i=@126.com header.a=rsa-sha256 header.s=s110527 header.b=nXUH76DA; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.infradead.org (client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org; envelope-from=opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org; receiver=patchwork.ozlabs.org) Received: from bombadil.infradead.org (bombadil.infradead.org [IPv6:2607:7c80:54:3::133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4SgLW43hWzz1yS6 for ; Thu, 30 Nov 2023 00:57:50 +1100 (AEDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=8kTzab0giEGc9DNoCdG5MTXvn1b8eSdfPyNEaiCoUrw=; b=enqMGEwBY02ipJ pw9zIpQ81HNjGjf0ucDVi0jw5e+CgBpZnInqNvsOfuIvVyT5qHbVH/SIYQON6T84bGfBfhc9gXPxh eCDlV1QpAEXac7c++ZKEfs9vVYkJ7k42JmLfza9KoS/QFQ6JtxDUJiK7BF6DVS6NKC27LXPH41skt zDDGD2OBGx1XPEvBX+t/61tAvwAJtNKwjI3E2IfkcQvS24VhfIssud0EIbY4wde4rsv1GhbmYueai GXmIr6bk7FkmN/rwhr7Cd7sN1S92lXzzGOGIqnl3ovPVrd9qvgbJ34S1Wo7mcUlxL7sQpPbPBDZKh Ukb1xOCdOnTdn6IrWPdA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r8L4I-008YBo-37; Wed, 29 Nov 2023 13:57:34 +0000 Received: from m126.mail.126.com ([220.181.12.26]) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1r8L4E-008Y9y-3D for opensbi@lists.infradead.org; Wed, 29 Nov 2023 13:57:33 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=126.com; s=s110527; h=From:Subject:Date:Message-ID:MIME-Version; bh=K/QU9 5mOU2nwwWqknBLBrrEWiNji9PI3YHGHbBUyWj8=; b=nXUH76DA9xGKgSPozd3w5 UKKwCINEC0wS8r1lfCOH+kOWzrn1z6w0NlEotWTdSklGQW7QkWLFqUaEcV9Td+g0 Ce7fvF6NlY0yHuPWPL0bx/PTz346dgSSUmQdO7YockrvwC9agAyjep+2IJh79cZj dR/SaIv7MobGG2lgTPakXw= Received: from T490.lan (unknown [112.83.182.199]) by zwqz-smtp-mta-g3-0 (Coremail) with SMTP id _____wC3_zg_Q2dlu9DgDA--.50301S2; Wed, 29 Nov 2023 21:57:20 +0800 (CST) From: Xiang W To: opensbi@lists.infradead.org Cc: Xiang W Subject: [PATCH] lib: sbi: skip wait_for_coldboot when coolboot done Date: Wed, 29 Nov 2023 21:57:00 +0800 Message-ID: <20231129135717.310197-1-wxjstz@126.com> X-Mailer: git-send-email 2.42.0 MIME-Version: 1.0 X-CM-TRANSID: _____wC3_zg_Q2dlu9DgDA--.50301S2 X-Coremail-Antispam: 1Uf129KBjvdXoWruFWxKrW8XFy3uFy7Kr4xXrb_yoW3Jrb_ur yxCr1IgwsxWrZFq3Wjvr45JFyS9wsYyF4kW3WUtrWDCr4Sy34DJryvgr97Wa45ur429w43 W3ZruF48Cr15ujkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7sRCPfQ5UUUUU== X-Originating-IP: [112.83.182.199] X-CM-SenderInfo: pz0m23b26rjloofrz/xtbBcxo3OmSQAbICBwACsk X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231129_055731_473602_050C7ADD X-CRM114-Status: UNSURE ( 6.20 ) X-CRM114-Notice: Please train this message. X-Spam-Score: -0.2 (/) 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: When warmboot via HSM, coolboot has been completed and wait_for_coldboot can be skipped to speed up. Signed-off-by: Xiang W --- lib/sbi/sbi_init.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) Content analysis details: (-0.2 points, 5.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.0 SPF_PASS SPF: sender matches SPF record 0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider [wxjstz[at]126.com] -0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain -0.1 DKIM_VALID Message has at least one valid DKIM or DK signature 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid -0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain 0.0 RCVD_IN_MSPIKE_L3 RBL: Low reputation (-3) [220.181.12.26 listed in bl.mailspike.net] 0.0 RCVD_IN_MSPIKE_BL Mailspike blacklisted X-BeenThere: opensbi@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "opensbi" Errors-To: opensbi-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org When warmboot via HSM, coolboot has been completed and wait_for_coldboot can be skipped to speed up. Signed-off-by: Xiang W --- lib/sbi/sbi_init.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/sbi/sbi_init.c b/lib/sbi/sbi_init.c index e723553..1f7f522 100644 --- a/lib/sbi/sbi_init.c +++ b/lib/sbi/sbi_init.c @@ -492,7 +492,8 @@ static void __noreturn init_warmboot(struct sbi_scratch *scratch, u32 hartid) { int hstate; - wait_for_coldboot(scratch, hartid); + if (!__smp_load_acquire(&coldboot_done)) + wait_for_coldboot(scratch, hartid); hstate = sbi_hsm_hart_get_state(sbi_domain_thishart_ptr(), hartid); if (hstate < 0)