From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.8 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 54EC5C2D0E4 for ; Fri, 13 Nov 2020 00:33:23 +0000 (UTC) Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id D694620B80 for ; Fri, 13 Nov 2020 00:33:22 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="WQTvwxbW"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=nuviainc-com.20150623.gappssmtp.com header.i=@nuviainc-com.20150623.gappssmtp.com header.b="jPQHCHWS" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org D694620B80 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=nuviainc.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=merlin.20170209; h=Sender:Content-Transfer-Encoding: Content-Type:Cc:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject: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=e3oTYt5WiQ0hXrWnYu6vU15LxmcWK7EXrZXTUtZVFfI=; b=WQTvwxbWr4T55tnVKFBVlXzEGn bOV0UHV0ewJ9k6Z8XQRLjTJlM4g/xyJgU1AyiFPdTo3CF6n09QbZfxp2o8BZ+8L1W5NHbnaDqLF6x p/kxQc6WJyzTnT7BoZr+7Xmp6ZFmO52phQFJ1EwBzd0cTxFC3KM5B7R3kkw63AjDcgbQwon9pwUTL lQCd04NvI6z1iZSbPSy/DlLEQgrf0YHqbelT3LrOKlHxb9gclYLeOsBydemerrz6HBX9BswaJIl1S awmdLzEKmwy3WC3jtI0+2TiUuced28JE/8SetK2I5syfScmNVPgVujIYJ1fQerOb2KTbpDl6dG961 a4V6aL2g==; Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1kdN0T-0002xD-18; Fri, 13 Nov 2020 00:32:01 +0000 Received: from mail-wr1-x443.google.com ([2a00:1450:4864:20::443]) by merlin.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1kdN0Q-0002wp-2t for linux-arm-kernel@lists.infradead.org; Fri, 13 Nov 2020 00:31:59 +0000 Received: by mail-wr1-x443.google.com with SMTP id b6so7915614wrt.4 for ; Thu, 12 Nov 2020 16:31:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuviainc-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=NDuLjxzTj5US9vNN3Cze/R5F0i2d2vfTFdKewJwX5yM=; b=jPQHCHWSTwDTzNjDawnmE5pSi5ibR6PGuys1GUvS2/sB5io+rBKjHEdFWLAJQejOJz Pcly691S97ahXigby8MQvCQsMhPIOxAsfhLiTJo/ozPt+fJ3FpiSmAYsrri+RDOngHgT NaddgjI9QLaSuaMctWuHOx1jCxSSadlxJaGp5hVhzYY25p2SRwpiT8E5FnQQcDB+QF2J 3H7pTErI60fXBFVfV99+M4huqDQDIKJ9E55Umw0lJtsTqiz5hGbimmJkQlVyTkqJ4grL kAYnH9Se3ScT0cNVVhLb9z3LQJKL68Taj/tlNxRdyQq44brgPKHkRz7iEwWInCBsyUig 1I5w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=NDuLjxzTj5US9vNN3Cze/R5F0i2d2vfTFdKewJwX5yM=; b=rrd33jRgbvDohe8fcWFKJyt+s4ujMCwDx6VcH6mtXbe+21DQmyvyhIHZYJnf8TOMFJ rInSsg22CQWXYpgpqVWGb4iZZOG3ja2G3lE8/xx4NIvO4CspixXCOOWPNXdRtIhQ/a2T gqQXXpuheFUQdlObD49OI9qkykRfFBmVCPXOHg3JCSLM0az5aSb3oQvYCb8AvClQV5yS fafmaBTOVYbXnURKBtPONvTwaFJIW/BVYc5Xt/D68619btRziWU46kDFfjfRnxSFO0d2 yf5eSuncY6wPQzZzyxwSAK8+mCCB63Y5DXT5ooFHBcrexKXFwoPe5EFDX9sNUu7rbW+c kG4w== X-Gm-Message-State: AOAM531W6EL5Er6DLsakekg+GdFuu+d8ZJbWnDOaDaTwmYSouaXI61D8 cUw8dhj4lns5L7Bt+RWrkSiJmdpzF0xI4FEbrkVimA2gO+DRpsZNUFpscm6ZQc8hF+W9GNfgrQu Yp0E0kwieYxDTCxel0W9uQOkh0bqpBIfaIFNI5B9QjVo+DvdqVpIZM8IXdcGGb7ULf7W6T8VVXg e+tRbX7nQ8Exup8o4= X-Google-Smtp-Source: ABdhPJxjApBHSIIma9UheCt7T58M2sE6csNIvI8MkNbxYhD1gtZqzuzIXGsM59+DS4/c6ub0Lp9jLg== X-Received: by 2002:adf:f304:: with SMTP id i4mr2519124wro.268.1605227515260; Thu, 12 Nov 2020 16:31:55 -0800 (PST) Received: from localhost ([82.44.17.50]) by smtp.gmail.com with ESMTPSA id p4sm8833886wmc.46.2020.11.12.16.31.54 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 12 Nov 2020 16:31:54 -0800 (PST) From: Jamie Iles To: linux-arm-kernel@lists.infradead.org Subject: [PATCH] kvm: arm64: correctly align nVHE percpu data Date: Fri, 13 Nov 2020 00:31:43 +0000 Message-Id: <20201113003143.3057-1-jamie@nuviainc.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20201112_193158_277693_30BDB631 X-CRM114-Status: GOOD ( 15.44 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Marc Zyngier , Jamie Iles , David Brazdil , Will Deacon Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The nVHE percpu data is partially linked but the nVHE linker script did not align the percpu section. The PERCPU_INPUT macro would then align the data to a page boundary: #define PERCPU_INPUT(cacheline) \ __per_cpu_start = .; \ *(.data..percpu..first) \ . = ALIGN(PAGE_SIZE); \ *(.data..percpu..page_aligned) \ . = ALIGN(cacheline); \ *(.data..percpu..read_mostly) \ . = ALIGN(cacheline); \ *(.data..percpu) \ *(.data..percpu..shared_aligned) \ PERCPU_DECRYPTED_SECTION \ __per_cpu_end = .; but then when the final vmlinux linking happens the hypervisor percpu data is included after page alignment and so the offsets potentially don't match. This manifests as one of the CPUs getting lost when running kvm-unit-tests on EL2 entry and subsequent soft lockup. Fixes: 30c953911c43 ("kvm: arm64: Set up hyp percpu data for nVHE") Cc: David Brazdil Cc: Marc Zyngier Cc: Will Deacon Signed-off-by: Jamie Iles --- arch/arm64/kvm/hyp/nvhe/hyp.lds.S | 1 + 1 file changed, 1 insertion(+) diff --git a/arch/arm64/kvm/hyp/nvhe/hyp.lds.S b/arch/arm64/kvm/hyp/nvhe/hyp.lds.S index bb2d986ff696..84edca959893 100644 --- a/arch/arm64/kvm/hyp/nvhe/hyp.lds.S +++ b/arch/arm64/kvm/hyp/nvhe/hyp.lds.S @@ -13,6 +13,7 @@ SECTIONS { HYP_SECTION(.text) + . = ALIGN(PAGE_SIZE); HYP_SECTION_NAME(.data..percpu) : { PERCPU_INPUT(L1_CACHE_BYTES) } -- 2.27.0 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel