All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] xen/arm: PSCI 1.1 and SMCCC-1.1 support and XSA-254 variant 2 update
@ 2018-02-05 13:20 Julien Grall
  2018-02-05 13:20 ` [PATCH 1/7] xen/arm: vpsci: Remove parameter 'ver' from do_common_cpu Julien Grall
                   ` (9 more replies)
  0 siblings, 10 replies; 30+ messages in thread
From: Julien Grall @ 2018-02-05 13:20 UTC (permalink / raw)
  To: xen-devel; +Cc: Julien Grall, sstabellini, andre.przywara

Hi all,

Arm has recently published a SMC Calling Convention (SMCCC)
specification update [1] that provides an optimised calling convention
and optional, discoverable support for mitigating CVE-2017-5715 (XSA-254
variant 2). ARM Trusted Firmware (ATF) has already gained such an
implementation[2].

This series addresses a few things:

    - It provides a Xen implementation of PSCI v1.0, which is a prerequisite
      for being able to discover SMCCC v1.1.
    - It allows Xen to advertise SMCCC v1.1
    - It implements Xen support for the ARM_WORKAROUND_1 function that is used
      to mitigate CVE-2017-5715 (if such mitigation is available on the
      hypervisor).

This method is intended to fully replace the initial PSCI_GET_VERSION
approach. Although PSCI_GET_VERSION still works, it has an obvious
overhead and is called on some of the hottest paths. We expect
ARCH_WORKAROUND_1 to be much faster.

Another series will be sent to allow the hypervisor discovering SMCCC 1.1 and
use it for the mitigation.

This series is based on the "xen/arm: SMCCC fixes and PSCI clean-up" one [3].

Cheers,

[1]: https://developer.arm.com/-/media/developer/pdf/ARM%20DEN%200070A%20Firmware%20interfaces%20for%20mitigating%20CVE-2017-5715_V1.0.pdf

[2]: https://github.com/ARM-software/arm-trusted-firmware/pull/1240

[3] https://lists.xenproject.org/archives/html/xen-devel/2018-02/msg00117.html

Julien Grall (7):
  xen/arm: vpsci: Remove parameter 'ver' from do_common_cpu
  xen/arm: psci: Rework the PSCI definitions
  xen/arm: vpsci: Add support for PSCI 1.1
  xen/arm: vsmc: Implement SMCCC 1.1
  xen/arm: vsmc: Implement SMCCC_ARCH_WORKAROUND_1 BP hardening support
  xen/arm: Adapt smccc.h to be able to use it in assembly code
  xen/arm64: Implement a fast path for handling SMCCC_ARCH_WORKAROUND_1

 tools/libxl/libxl_arm.c          |  3 +-
 xen/arch/arm/arm64/entry.S       | 56 +++++++++++++++++++++++++-
 xen/arch/arm/domain_build.c      |  1 +
 xen/arch/arm/platforms/seattle.c |  4 +-
 xen/arch/arm/psci.c              | 10 ++---
 xen/arch/arm/vpsci.c             | 85 +++++++++++++++++++++++++++++-----------
 xen/arch/arm/vsmc.c              | 41 +++++++++++++++++++
 xen/include/asm-arm/perfc_defn.h |  1 +
 xen/include/asm-arm/processor.h  |  2 +
 xen/include/asm-arm/psci.h       | 38 ++++++++++--------
 xen/include/asm-arm/smccc.h      | 37 ++++++++++++++---
 xen/include/asm-arm/vpsci.h      |  2 +-
 12 files changed, 225 insertions(+), 55 deletions(-)

-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel

^ permalink raw reply	[flat|nested] 30+ messages in thread

end of thread, other threads:[~2018-02-09 12:36 UTC | newest]

Thread overview: 30+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-05 13:20 [PATCH 0/7] xen/arm: PSCI 1.1 and SMCCC-1.1 support and XSA-254 variant 2 update Julien Grall
2018-02-05 13:20 ` [PATCH 1/7] xen/arm: vpsci: Remove parameter 'ver' from do_common_cpu Julien Grall
2018-02-06 15:42   ` Volodymyr Babchuk
2018-02-08 18:12     ` Julien Grall
2018-02-09 12:36       ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 2/7] xen/arm: psci: Rework the PSCI definitions Julien Grall
2018-02-06 15:57   ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 3/7] xen/arm: vpsci: Add support for PSCI 1.1 Julien Grall
2018-02-06 16:07   ` Volodymyr Babchuk
2018-02-06 17:44     ` Julien Grall
2018-02-05 13:20 ` [PATCH 4/7] xen/arm: vsmc: Implement SMCCC 1.1 Julien Grall
2018-02-06 16:18   ` Volodymyr Babchuk
2018-02-06 18:04     ` Julien Grall
2018-02-07 13:39       ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 5/7] xen/arm: vsmc: Implement SMCCC_ARCH_WORKAROUND_1 BP hardening support Julien Grall
2018-02-06 16:23   ` Volodymyr Babchuk
2018-02-06 18:12     ` Julien Grall
2018-02-07 13:49       ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 6/7] xen/arm: Adapt smccc.h to be able to use it in assembly code Julien Grall
2018-02-06 16:25   ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 7/7] xen/arm64: Implement a fast path for handling SMCCC_ARCH_WORKAROUND_1 Julien Grall
2018-02-06 16:36   ` Volodymyr Babchuk
2018-02-06 18:33     ` Julien Grall
2018-02-07 13:42       ` Volodymyr Babchuk
2018-02-05 13:20 ` [PATCH 8/9] xen/arm: Park CPUs with a MIDR different from the boot CPU Julien Grall
2018-02-05 13:25   ` Julien Grall
2018-02-05 13:20 ` [PATCH 9/9] xen/arm: Help to know the hardening provided for a CPU Julien Grall
2018-02-05 13:25   ` Julien Grall
2018-02-08 16:26 ` [PATCH 0/7] xen/arm: PSCI 1.1 and SMCCC-1.1 support and XSA-254 variant 2 update Manish Jaggi
2018-02-08 16:28   ` Julien Grall

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.