From patchwork Thu Oct 31 15:09:03 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Julien Grall X-Patchwork-Id: 178188 Delivered-To: patch@linaro.org Received: by 2002:a92:409a:0:0:0:0:0 with SMTP id d26csp2980089ill; Thu, 31 Oct 2019 08:11:14 -0700 (PDT) X-Google-Smtp-Source: APXvYqzASnraUewOOrLwwNxVSG8O/rcrymkDGrEOGY2DPvhvyjVVVrFAeizG0Cq8RkAZF8IsDlre X-Received: by 2002:a92:dd88:: with SMTP id g8mr6496606iln.221.1572534674763; Thu, 31 Oct 2019 08:11:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1572534674; cv=none; d=google.com; s=arc-20160816; b=J/ATwu2KV0j93es3PVegLD+1Nn+HMp3oEF3FEuypnF99AM3TrD84GIfwI70S/PMb0h BFBhzjo3IHS+v9Xrc4ARJnZapdtYStE+OiRCRAoZPfMetDs2rvbr6XapQMAHnA4RHQ3t k3DX/0IE4RHteO4u2CMyhC9ulWOarDlVuLWaKMef7ZYRzuqAS9StKvq3quZi3bOILUhF Fgh3HwDXcQ6fVeXdUWBG8tbMsWuWQEZCLWCDUzU0Aq3sTdpWuXcTDC43MpmpCDskuxr7 BA9hb8k9u4ctYkJNJCvBw3HpAfZ3yjcgJuLYdgzFq+83/XxB6O8eE9wWGPDJkzoQTbNF V4IQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc :list-subscribe:list-help:list-post:list-unsubscribe:list-id :precedence:subject:message-id:date:to:from; bh=26VtdAwyw9B6sinMmsAMHAssPzsApv78X01u+zUfA3g=; b=IvINuLmcmYNR4W+7PeMN4F2+D89qW+UIp94ERBD0ko+AXPt4AsMF2pZtiDYhwGOZyW QnV7BIEN7nykdC3WBhoOh3WHhhekNYP8atDiw4a432eByXvVoIn6Zb1ssJERYe5Tdu2G dMWMmPLWJPCDUOvAJWJ0oym8dlLtuSmNf0KNfoxlbOWcLFuud3cK9G+/BFMUOE+HqJ/8 JD3J55p158hjPic6E4tcigG7YR9+Vl0Ve9NMnQwBrHBHiAMaWtzzFojEHUjlMBz2suTN OGUQrvyMnETOMKFgxF/YgjztHQc0datZ0eiipgtP3tPOaan2oA6IqXTsxK/TUnquzD5H VmJQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of xen-devel-bounces@lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org. [192.237.175.120]) by mx.google.com with ESMTPS id b2si6585534iob.84.2019.10.31.08.11.14 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 31 Oct 2019 08:11:14 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of xen-devel-bounces@lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of xen-devel-bounces@lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iQC4t-0006Rn-Lt; Thu, 31 Oct 2019 15:09:35 +0000 Received: from us1-rack-iad1.inumbo.com ([172.99.69.81]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1iQC4s-0006Rd-DS for xen-devel@lists.xenproject.org; Thu, 31 Oct 2019 15:09:34 +0000 X-Inumbo-ID: 71c867ae-fbf0-11e9-8aca-bc764e2007e4 Received: from foss.arm.com (unknown [217.140.110.172]) by us1-rack-iad1.inumbo.com (Halon) with ESMTP id 71c867ae-fbf0-11e9-8aca-bc764e2007e4; Thu, 31 Oct 2019 15:09:33 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 887511F1; Thu, 31 Oct 2019 08:09:32 -0700 (PDT) Received: from e108454-lin.cambridge.arm.com (unknown [10.1.196.50]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id C83133F71E; Thu, 31 Oct 2019 08:09:30 -0700 (PDT) From: Julien Grall To: xen-devel@lists.xenproject.org Date: Thu, 31 Oct 2019 15:09:03 +0000 Message-Id: <20191031150922.22938-1-julien.grall@arm.com> X-Mailer: git-send-email 2.11.0 Subject: [Xen-devel] [PATCH for-4.13 v4 00/19] xen/arm: XSA-201 and XSA-263 fixes X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: jgross@suse.com, Stefano Stabellini , Julien Grall , Wei Liu , Konrad Rzeszutek Wilk , George Dunlap , Andrew Cooper , Ian Jackson , Ross Lagerwall , Julien Grall , Jan Beulich , Volodymyr Babchuk MIME-Version: 1.0 Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" Hi all, This is v4 of the series. For those wondering why it is v4 and not v2, this series is closely related to XSA-303 [1] and refrained to post a new version publicly. To avoid delaying the series was reviewed privately on security@. The series is now nearly fully reviewed. There are just a few missing tags for patch #11, #12 and #19. The series is based on XSA-303 which has not yet been committed. For convenience, I have pushed a branch on my public git: https://xenbits.xen.org/git-http/people/julieng/xen-unstable.git branch entry-rework/v4 @Juergen: On v1, you agreed this should be considered as a blocker for Xen 4.13. Are you still happy to consider this series to go in Xen 4.13?This is mostly fixing up the non-XSA part of XSA-303. This should allow to handle properly SSBD workaround and receive safely SErrors. Cheers, [1] https://xenbits.xen.org/xsa/advisory-303.html Cc: jgross@suse.com Julien Grall (18): docs/misc: xen-command-line: Remove wrong statement from serrors=diverse xen/arm: Remove serrors=forward xen/arm: traps: Rework __do_serror() documentation docs/misc: xen-command-line: Rework documentation of the option 'serrors' xen/arm: traps: Update the correct PC when inject a virtual SError to the guest xen/arm64: entry: Avoid open-coding interrupt flags xen/arm64: entry: Introduce a macro to generate guest vector and use it xen/arm64: entry: Check if an SError is pending when receiving a vSError xen/arm: traps: Rework entry/exit from the guest path xen/arm32: entry: Rename save_guest_regs() xen/arm: Ensure the SSBD workaround is re-enabled right after exiting a guest xen/arm: traps: Don't ignore invalid value for serrors= xen/arm: alternative: Remove unused parameter for alternative_if_not_cap xen/arm: Move ARCH_PATCH_INSN_SIZE out of the header livepatch.h xen/arm: Allow insn.h to be called from assembly xen/arm: asm: Replace use of ALTERNATIVE with alternative_if xen/arm: Update the ASSERT() in SYNCHRONIZE_SERROR() xen/arm: entry: Ensure the guest state is synced when receiving a vSError Mark Rutland (1): xen/arm: alternative: add auto-nop infrastructure docs/misc/xen-command-line.pandoc | 45 +++------- xen/arch/arm/alternative.c | 2 - xen/arch/arm/arm32/entry.S | 80 ++++++++++++++---- xen/arch/arm/arm32/traps.c | 12 +-- xen/arch/arm/arm64/entry.S | 170 +++++++++++++++++++++----------------- xen/arch/arm/domain.c | 11 --- xen/arch/arm/traps.c | 166 +++++++++++++++++-------------------- xen/include/asm-arm/alternative.h | 75 ++++++++++++----- xen/include/asm-arm/cpufeature.h | 11 ++- xen/include/asm-arm/insn.h | 7 ++ xen/include/asm-arm/livepatch.h | 4 +- xen/include/asm-arm/macros.h | 7 ++ xen/include/asm-arm/processor.h | 2 +- 13 files changed, 323 insertions(+), 269 deletions(-)