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: 11221425 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id BECCF1390 for ; Thu, 31 Oct 2019 15:11:12 +0000 (UTC) Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (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 A2AC12087E for ; Thu, 31 Oct 2019 15:11:12 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A2AC12087E Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=none 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(-)