ACK: [PULL REQUEST][kinetic/linux-azure] Kinetic: Enable MSFT Hyper-v TDX guest support

Marcelo Henrique Cerri marcelo.cerri at canonical.com
Mon Jan 16 17:23:35 UTC 2023


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512


Acked-by: Marcelo Henrique Cerri <marcelo.cerri at canonical.com>

Branch should be kinetic-azure-tdx

On Thu, Jan 12 2023, Tim Gardner wrote:
> SRU Justification
>
> BugLink: https://bugs.launchpad.net/bugs/2002658
>
> [Impact]
>
> Support for Intel TDX guest driver is just now appearing
> upstream. This patch set is a backport of the patches essential to
> enabling TDX guest support on the Microsoft hypervisor.
>
> Most of these patches are not yet upstream, but are considered benign
> with respect to MSFT hypervisors that do not yet have support for
> TDX. I have boot tested on an existing Hyper-v hypervisor to ensure
> backwards compatibility.
>
> This patch set will eventually be replaced by upstream patches.
>
> [Test Plan]
>
> Boot on a TDX enabled Hyper-v instance.
>
> [Where things could go wrong]
>
> Existing Azure instances could have boot issues.
>
> -----------------------------------------------------------------------
>
> The following changes since commit 1c80ad05e8fbba41a36a1dcccdf7ddf9916b6e1a:
>
>   UBUNTU: Ubuntu-azure-5.19.0-1016.17 (2022-12-15 11:28:09 -0700)
>
> are available in the Git repository at:
>
>   git://git.launchpad.net/~timg-tpi/ubuntu/+source/linux/+git/kinetic
>   102f198aac3f164c595a552165900fa63bc1f1e6
>
> for you to fetch changes up to 102f198aac3f164c595a552165900fa63bc1f1e6:
>
>   UBUNTU: SAUCE: tdx: Drivers: hv: vmbus:: Fix the ARM64 build caused
>   by recent TDX patches (2023-01-12 07:37:26 -0700)
>
> ----------------------------------------------------------------
> Anirudh Rayabharam (1):
>       clocksource/drivers/hyperv: add data structure for reference TSC MSR
>
> Dexuan Cui (14):
>       Revert "UBUNTU: SAUCE: x86/tdx: Add TDX Guest attestation
>       interface driver"
>       Revert "UBUNTU: SAUCE: selftests: tdx: Test GetReport TDX
>       attestation feature"
>       Revert "x86/hyper-v: Add hyperv Isolation VM check in the
>       cc_platform_has()"
>       UBUNTU: SAUCE: tdx: enable DEBUG:
>       tools/testing/selftests/tdx/tdx_guest_test.c
>       UBUNTU: SAUCE: tdx: swiotlb: check set_memory_decrypted()'s
>       return value
>       UBUNTU: SAUCE: tdx: x86/sev: mem_encrypt_free_decrypted_mem():
>       encrypt the pages for AMD SME only
>       UBUNTU: SAUCE: tdx: x86/hyperv: Do not run
>       swiotlb_update_mem_attributes() in hyperv_init()
>       UBUNTU: SAUCE: tdx: x86/tdx: Retry TDVMCALL_MAP_GPA() when needed
>       UBUNTU: SAUCE: tdx: x86/tdx: Support vmalloc() for
>       tdx_enc_status_changed()
>       UBUNTU: SAUCE: tdx: x86/hyperv: Add hv_isolation_type_tdx() to
>       detect TDX guests
>       UBUNTU: SAUCE: tdx: x86/hyperv: Support hypercalls for TDX guests
>       UBUNTU: SAUCE: tdx: Drivers: hv: vmbus: Support TDX guests
>       UBUNTU: SAUCE: tdx: x86/hyperv: Fix serial console interrupts
>       for TDX guests
>       UBUNTU: SAUCE: tdx: Drivers: hv: vmbus:: Fix the ARM64 build
>       caused by recent TDX patches
>
> Kirill A. Shutemov (1):
>       UBUNTU: SAUCE: tdx: x86/tdx: Expand __tdx_hypercall() to handle
>       more arguments
>
> Kuppuswamy Sathyanarayanan (3):
>       x86/tdx: Add a wrapper to get TDREPORT0 from the TDX Module
>       virt: Add TDX guest driver
>       selftests/tdx: Test TDX attestation GetReport support
>
> Tim Gardner (1):
>       UBUNTU: [Config] azure: Enable TDX guest driver
>
>  Documentation/virt/coco/tdx-guest.rst         |  52 +++++++++++++++++
>  Documentation/virt/index.rst                  |   1 +
>  Documentation/x86/tdx.rst                     |  43 ++++++++++++++
>  arch/x86/coco/core.c                          |   6 --
>  arch/x86/coco/tdx/tdcall.S                    |  82
>  +++++++++++++++++++--------
>  arch/x86/coco/tdx/tdx.c                       | 262
>  ++++++++++++++++++++++++++++++++++++++++---------------------------------------------
>  arch/x86/hyperv/hv_init.c                     |  32 +++++++++--
>  arch/x86/hyperv/ivm.c                         |  28 +++++++++
>  arch/x86/include/asm/hyperv-tlfs.h            |   3 +-
>  arch/x86/include/asm/mshyperv.h               |  20 +++++++
>  arch/x86/include/asm/shared/tdx.h             |   6 ++
>  arch/x86/include/asm/tdx.h                    |   2 +
>  arch/x86/include/uapi/asm/tdx.h               |  51 -----------------
>  arch/x86/kernel/asm-offsets.c                 |   6 ++
>  arch/x86/kernel/cpu/mshyperv.c                |  44 ++++++++++++++-
>  arch/x86/mm/mem_encrypt_amd.c                 |   2 +-
>  arch/x86/mm/pat/set_memory.c                  |   2 +-
>  debian.azure/config/config.common.ubuntu      |   1 +
>  drivers/clocksource/hyperv_timer.c            |  29 +++++-----
>  drivers/hv/connection.c                       |   4 +-
>  drivers/hv/hv.c                               |  60 +++++++++++++++++++-
>  drivers/hv/hv_common.c                        |  12 ++++
>  drivers/hv/ring_buffer.c                      |   4 ++
>  drivers/virt/Kconfig                          |   2 +
>  drivers/virt/Makefile                         |   1 +
>  drivers/virt/coco/tdx-guest/Kconfig           |  10 ++++
>  drivers/virt/coco/tdx-guest/Makefile          |   2 +
>  drivers/virt/coco/tdx-guest/tdx-guest.c       | 102
>  +++++++++++++++++++++++++++++++++
>  include/asm-generic/hyperv-tlfs.h             |   9 +++
>  include/asm-generic/mshyperv.h                |   3 +
>  include/uapi/linux/tdx-guest.h                |  42 ++++++++++++++
>  kernel/dma/swiotlb.c                          |   5 +-
>  tools/arch/x86/include/uapi/asm/tdx.h         |  51 -----------------
>  tools/testing/selftests/tdx/Makefile          |   8 +--
>  tools/testing/selftests/tdx/config            |   2 +-
>  tools/testing/selftests/tdx/tdx_attest_test.c | 156
>  ---------------------------------------------------
>  tools/testing/selftests/tdx/tdx_guest_test.c  | 163
>  +++++++++++++++++++++++++++++++++++++++++++++++++++++
>  37 files changed, 847 insertions(+), 461 deletions(-)
>  create mode 100644 Documentation/virt/coco/tdx-guest.rst
>  delete mode 100644 arch/x86/include/uapi/asm/tdx.h
>  create mode 100644 drivers/virt/coco/tdx-guest/Kconfig
>  create mode 100644 drivers/virt/coco/tdx-guest/Makefile
>  create mode 100644 drivers/virt/coco/tdx-guest/tdx-guest.c
>  create mode 100644 include/uapi/linux/tdx-guest.h
>  delete mode 100644 tools/arch/x86/include/uapi/asm/tdx.h
>  delete mode 100644 tools/testing/selftests/tdx/tdx_attest_test.c
>  create mode 100644 tools/testing/selftests/tdx/tdx_guest_test.c
> --
> -----------
> Tim Gardner
> Canonical, Inc



- --
Regards,
Marcelo
-----BEGIN PGP SIGNATURE-----

iQHQBAEBCgA6FiEExJjLjAfVL0XbfEr56e82LoessAkFAmPFiDkcHG1hcmNlbG8u
Y2VycmlAY2Fub25pY2FsLmNvbQAKCRDp7zYuh6ywCSAfC/4iYfFBkut+d5eDe4LX
H4Lfo+jjnfUP9AGUZgYYV27UJEAnDnB/maKZt+pHRGfPUokHeDWYGHjI0Iltz+TK
7qs4qF7vF8u/iAcAebgjGDrk8sUHo3rWNjv/7PWrXi6K/jTU3W1laH+UJAvfYEun
pbR0IKZa9ncSErFR2XLlkYu9WXddZEVbv9Q99tIoZNb+GnvYKu2s6GELBXjXKixh
5m/HDvcOvb6VbN20eXPTYpjn8xoZFTyJNfXHKTj2U5HO0CnMBnG/kaMoFRTjv4xA
eG13K6xFShcXX8mVQPatJok2yGscfajie5GWwrQfQXgP+6wi/aBk32CJbjSt/tQg
V6XEhckKpvb93IGUjN7BGYXAXf9KhvpQTZ+ZtYH2914JFMtCEuyrLCz9gIHXuKDE
q8mInRp9LxHnc2OwhvAjSyXPxHy6EU6P92vRwaTzHrUGmzE6oXe5WbLd182S6ays
hIYXkoIUQn4Y5DjpibJPqcqjWqCta+Q+6WwTvljBPimJHtA=
=zk3N
-----END PGP SIGNATURE-----



More information about the kernel-team mailing list