From nobody Thu May 2 13:49:06 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass(p=reject dis=none) header.from=citrix.com ARC-Seal: i=1; a=rsa-sha256; t=1679696742; cv=none; d=zohomail.com; s=zohoarc; b=kjcYEHPkikSQAAEK59PwQA8zmcwsNc8GhSkSdoMneHnRdovXTu3gOcWdjCNIgO9juuZuPExsrB9avQ26GS9cBuYH2RgupLb/D6Mfr3Ofa5JF6Ss/XErJR79vZM0EzPJdPup97vB3rxTBkLGfOYSmRRxxWWn41p2lNF0atMYzIYk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1679696742; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To; bh=2B1w0u0NLc3boGKkWpXrXsipIU1oewLYlE0+dq574Ow=; b=adMuzKL+kW8BS70jv5/vYwKWk4OmDIrAZ2niy0l19vXHAw3B8rBIt6tyto9EgW8Tgs1Sm81Zr/Vtk9I3wBTeewDGJ3r0H7Ob2EQoFOKLTvUBDOB+m7pOnakC170lMYi08sSF9jEvs7tqvp812FplPce/Ydcj4RBRFtPEROjqayk= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=pass header.from= (p=reject dis=none) Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1679696742499801.268065934773; Fri, 24 Mar 2023 15:25:42 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.514474.796758 (Exim 4.92) (envelope-from ) id 1pfpqT-0007sa-Cp; Fri, 24 Mar 2023 22:25:13 +0000 Received: by outflank-mailman (output) from mailman id 514474.796758; Fri, 24 Mar 2023 22:25:13 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1pfpqT-0007sT-7j; Fri, 24 Mar 2023 22:25:13 +0000 Received: by outflank-mailman (input) for mailman id 514474; Fri, 24 Mar 2023 22:25:12 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1pfpqS-0007rc-8F for xen-devel@lists.xenproject.org; Fri, 24 Mar 2023 22:25:12 +0000 Received: from esa6.hc3370-68.iphmx.com (esa6.hc3370-68.iphmx.com [216.71.155.175]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id bb724ea8-ca92-11ed-85db-49a42c6b2330; Fri, 24 Mar 2023 23:25:09 +0100 (CET) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: bb724ea8-ca92-11ed-85db-49a42c6b2330 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=citrix.com; s=securemail; t=1679696709; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=JdsUPRyO9hKi+dT989li7QC+or0gXW+UxwEHUyBJBYs=; b=GApi9uc8r2+Kc1FKvMwX74lrhmje+qQQBWB2csYEqT2CQNUZRT2OXkvc Vtg353Ynt4jpsQWIaRhusj6LEr9Et6uZAugTCcCLg9hjiKHCd651BEjWC 6xkkOCr8XWsxiXLO3jRK7FNXntOa6Pl9gct1YAWPnJ4mslUtvcOqoPsMo 8=; Authentication-Results: esa6.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none X-SBRS: 4.0 X-MesageID: 101652470 X-Ironport-Server: esa6.hc3370-68.iphmx.com X-Remote-IP: 162.221.156.123 X-Policy: $RELAYED IronPort-Data: A9a23:B12k5qxgCWmP91sgGLR6t+esxirEfRIJ4+MujC+fZmUNrF6WrkVRz DNLCGiDOPyJZTT1edgjbIy1oxsFu5OHnIIxTAY9/CAxQypGp/SeCIXCJC8cHc8wwu7rFxs7s ppEOrEsCOhuExcwcz/0auCJQUFUjP3OHfykTrafYEidfCc8IA85kxVvhuUltYBhhNm9Emult Mj75sbSIzdJ4RYtWo4vw//F+UMHUMja4mtC5QRlP6wT5zcyqlFOZH4hDfDpR5fHatE88t6SH 47r0Ly/92XFyBYhYvvNfmHTKxBirhb6ZGBiu1IOM0SQqkEqSh8ai87XAME0e0ZP4whlqvgqo Dl7WT5cfi9yVkHEsLx1vxC1iEiSN4UekFPMCSDXXcB+UyQq2pYjqhljJBheAGEWxgp4KUNh8 Pw3cSpVUhqe2rq92rueSsV128t2eaEHPKtH0p1h5TTQDPJgSpHfWaTao9Rf2V/chOgXQ6yYP ZBAL2MyMlKZOUYn1lQ/UfrSmM+BgHXlfiIeg1WSvactuEDYzRBr0airO93QEjCPbZwNxxjF/ D6ZpwwVBDknH+Caij2drU6P2N3MoxvpUa0XJp6Bo6sCbFq7mTVIVUx+uUGAiem0jAuyVsxSL 2QQ+zEytu4i+UqzVN7/Uhak5nmesXY0QMFMGuc37AWMzKv84AuDAGUACDlbZ7QOttIyRDEs/ k+EmZXuHzMHmIOSTXWR57KFtwSYMCIeLXIBTSIcRA5D6N7myKk5gwjTVN9lHOiwh8fsBDDr6 zmQqW41gLB7pccP1r6n9FHdxTy2r57CTxUd+QncGGmi62tRbomvbZ2l8ljf4PNJKq6WS1CAu D4PnM32xOsJC5eKliCEXuQWNL6s7veBdjbbhDZHGJ0s9C+s+jigYJpX6zF9I29mN88FfXniZ 0q7hO9KzMYNZj3wN/YxOt/vTZ1wlsAMCOgJSNj2Qd9OTcFrLDON4Xw2blSZ+mDBiRUjxPRX1 YigTSq8MZoLIf05k2voGbpHiudDKjMWnj2KG82ip/iz+f/HPSPOF+9YWLebRrphhJ5otjk55 Dq22yGi7xxEGNPzbSDMmWL4BQBbdCNrbXwaRiE+SwJiHuaFMDt7YxMp6el9E7GJZowM/gsyw lmzW1VD1H30jmDdJAOBZxhLMe2wDMgv9ipibHd1YD5EPkTPhq7xhJrzirNtJeV3nACd5acco wY5lzWoXa0UF2WvF8U1Zpjhto1yHCmWafa1F3P9OlAXJscwLzElD/e4JmMDAgFSVHvo3Sb/y pX8vj7mrW0rHV4zV5eNMa/3kjtcfxE1wYpPYqcBGfELEG2EzWSgA3WZYiMfSy3UFSj++w== IronPort-HdrOrdr: A9a23:X9OYbqx76WCmu7oB35OLKrPwFL1zdoMgy1knxilNoEpuA6ilfq eV/MjztCWUtN9/YhkdcLy7U5VoIkmzyXcW2+Us1OyZLWzbUQKTRb2Ki7GJ/9SKIULDH4BmuJ uJ3MJFebrN5fQRt7eY3OEYeexQouW6zA== X-IronPort-AV: E=Sophos;i="5.98,289,1673931600"; d="scan'208";a="101652470" From: Andrew Cooper To: Xen-devel CC: Andrew Cooper , Stefano Stabellini , Julien Grall , Volodymyr Babchuk , Bertrand Marquis , Bob Eshleman , Alistair Francis , Connor Davis , "Oleksii Kurochko" Subject: [PATCH] ARM+RISC-V: BSS handling improvements Date: Fri, 24 Mar 2023 22:24:51 +0000 Message-ID: <20230324222451.3295023-1-andrew.cooper3@citrix.com> X-Mailer: git-send-email 2.30.2 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZohoMail-DKIM: pass (identity @citrix.com) X-ZM-MESSAGEID: 1679696743954100001 Content-Type: text/plain; charset="utf-8" * Correct comments in arm{32,64}/head.S * Provide Linker assertions to check the safety of the zeroing loops Signed-off-by: Andrew Cooper Acked-by: Alistair Francis Reviewed-by: Julien Grall Reviewed-by: Oleksii Kurochko --- CC: Stefano Stabellini CC: Julien Grall CC: Volodymyr Babchuk CC: Bertrand Marquis CC: Bob Eshleman CC: Alistair Francis CC: Connor Davis CC: Oleksii Kurochko Pulled out of the very start of my work to try and unify the handling of xen_phys_addr across architectures. --- xen/arch/arm/arm32/head.S | 2 +- xen/arch/arm/arm64/head.S | 2 +- xen/arch/arm/xen.lds.S | 2 ++ xen/arch/riscv/xen.lds.S | 4 ++++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index df51550baa8a..f9f7be9588b1 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -301,7 +301,7 @@ ENDPROC(check_cpu_mode) zero_bss: PRINT("- Zero BSS -\r\n") mov_w r0, __bss_start /* r0 :=3D vaddr(__bss_start) */ - mov_w r1, __bss_end /* r1 :=3D vaddr(__bss_start) */ + mov_w r1, __bss_end /* r1 :=3D vaddr(__bss_end) */ =20 mov r2, #0 1: str r2, [r0], #4 diff --git a/xen/arch/arm/arm64/head.S b/xen/arch/arm/arm64/head.S index 4a3f87117c83..8a4dd64c99ad 100644 --- a/xen/arch/arm/arm64/head.S +++ b/xen/arch/arm/arm64/head.S @@ -437,7 +437,7 @@ zero_bss: =20 PRINT("- Zero BSS -\r\n") ldr x0, =3D__bss_start /* x0 :=3D vaddr(__bss_start) */ - ldr x1, =3D__bss_end /* x1 :=3D vaddr(__bss_start) */ + ldr x1, =3D__bss_end /* x1 :=3D vaddr(__bss_end) */ =20 1: str xzr, [x0], #8 cmp x0, x1 diff --git a/xen/arch/arm/xen.lds.S b/xen/arch/arm/xen.lds.S index 1b392345bc3b..6ca3caefe607 100644 --- a/xen/arch/arm/xen.lds.S +++ b/xen/arch/arm/xen.lds.S @@ -240,3 +240,5 @@ ASSERT(_idmap_end - _idmap_start <=3D PAGE_SIZE, "Ident= ity mapped code is larger t */ ASSERT(IS_ALIGNED(__init_begin, 4), "__init_begin is misaligned") ASSERT(IS_ALIGNED(__init_end, 4), "__init_end is misaligned") +ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misali= gned") +ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misalign= ed") diff --git a/xen/arch/riscv/xen.lds.S b/xen/arch/riscv/xen.lds.S index ca57cce75cba..2ed70eccc62a 100644 --- a/xen/arch/riscv/xen.lds.S +++ b/xen/arch/riscv/xen.lds.S @@ -1,3 +1,4 @@ +#include #include =20 #undef ENTRY @@ -156,3 +157,6 @@ SECTIONS =20 ELF_DETAILS_SECTIONS } + +ASSERT(IS_ALIGNED(__bss_start, POINTER_ALIGN), "__bss_start is misali= gned") +ASSERT(IS_ALIGNED(__bss_end, POINTER_ALIGN), "__bss_end is misalign= ed") --=20 2.30.2