GCP TDX Support

Bug #2052576 reported by John Cabaj
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-gcp (Ubuntu)
New
Undecided
Unassigned
Mantic
Fix Released
Undecided
John Cabaj

Bug Description

[Impact]

* Google requested TDX guest features to be added to GCP kernel.

[Fix]

* 16 clean cherry-picks, 2 backports from upstream
* 11 backports from Intel
* 1 config change to enable support

[Test Case]

* Compile tested
* Boot tested
* Tested internally at various stages of development
* Tested by Google

[Where things could go wrong]

* Majority of patches come from upstream with minimal backporting.
* Some patches sourced from Intel, and differ from upstream counterparts. However, these patches have been extensively tested in other kernels already released.

[Other Info]

* SF #00363309

John Cabaj (john-cabaj)
description: updated
description: updated
Changed in linux-gcp (Ubuntu Mantic):
status: New → In Progress
assignee: nobody → John Cabaj (john-cabaj)
John Cabaj (john-cabaj)
Changed in linux-gcp (Ubuntu Mantic):
status: In Progress → Fix Committed
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote :

This bug is awaiting verification that the linux-gcp/6.5.0-1015.15 kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-mantic-linux-gcp' to 'verification-done-mantic-linux-gcp'. If the problem still exists, change the tag 'verification-needed-mantic-linux-gcp' to 'verification-failed-mantic-linux-gcp'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: kernel-spammed-mantic-linux-gcp-v2 verification-needed-mantic-linux-gcp
Revision history for this message
John Cabaj (john-cabaj) wrote :

Google tested packages from build PPA.

tags: added: verification-done-mantic-linux-gcp
removed: verification-needed-mantic-linux-gcp
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (123.4 KiB)

This bug was fixed in the package linux-gcp - 6.5.0-1015.15

---------------
linux-gcp (6.5.0-1015.15) mantic; urgency=medium

  * mantic/linux-gcp: 6.5.0-1015.15 -proposed tracker (LP: #2052025)

  * Packaging resync (LP: #1786013)
    - debian/dkms-versions -- update from kernel-versions (main/2024.02.05)

  * GCP TDX Support (LP: #2052576)
    - x86/tdx: Mark TSC reliable
    - virt: coco: Add a coco/Makefile and coco/Kconfig
    - configfs-tsm: Introduce a shared ABI for attestation reports
    - virt: sevguest: Prep for kernel internal get_ext_report()
    - mm/slab: Add __free() support for kvfree
    - virt: sevguest: Add TSM_REPORTS support for SNP_GET_EXT_REPORT
    - x86/tdx: Retry partially-completed page conversion hypercalls
    - SAUCE: x86/tdx: Skip saving output regs when SEAMCALL fails with
      VMFailInvalid
    - SAUCE: virt: tdx-guest: Add RTMR update interface
    - SAUCE: x86/tdx: Make macros of TDCALLs consistent with the spec
    - SAUCE: x86/tdx: Rename __tdx_module_call() to __tdcall()
    - SAUCE: x86/tdx: Pass TDCALL/SEAMCALL input/output registers via a structure
    - SAUCE: x86/tdx: Extend TDX_MODULE_CALL to support more TDCALL/SEAMCALL leafs
    - SAUCE: x86/tdx: Make TDX_HYPERCALL asm similar to TDX_MODULE_CALL
    - SAUCE: x86/tdx: Reimplement __tdx_hypercall() using TDX_MODULE_CALL asm
    - SAUCE: x86/tdx: Remove 'struct tdx_hypercall_args'
    - SAUCE: x86/virt/tdx: Wire up basic SEAMCALL functions
    - x86/virt/tdx: Make TDX_MODULE_CALL handle SEAMCALL #UD and #GP
    - x86/tdx: Fix __noreturn build warning around __tdx_hypercall_failed()
    - virt: tdx-guest: Add Quote generation support using TSM_REPORTS
    - x86/kvm: Do not try to disable kvmclock if it was not enabled
    - [Config] gcp: Updates for TDX

  [ Ubuntu: 6.5.0-25.25 ]

  * mantic/linux: 6.5.0-25.25 -proposed tracker (LP: #2052615)
  * Packaging resync (LP: #1786013)
    - debian/dkms-versions -- update from kernel-versions (main/2024.02.05)
  * [SRU][22.04.04]: mpi3mr driver update (LP: #2045233)
    - scsi: mpi3mr: Invoke soft reset upon TSU or event ack time out
    - scsi: mpi3mr: Update MPI Headers to version 3.00.28
    - scsi: mpi3mr: Add support for more than 1MB I/O
    - scsi: mpi3mr: WRITE SAME implementation
    - scsi: mpi3mr: Enhance handling of devices removed after controller reset
    - scsi: mpi3mr: Update driver version to 8.5.0.0.0
    - scsi: mpi3mr: Split off bus_reset function from host_reset
    - scsi: mpi3mr: Add support for SAS5116 PCI IDs
    - scsi: mpi3mr: Add PCI checks where SAS5116 diverges from SAS4116
    - scsi: mpi3mr: Increase maximum number of PHYs to 64 from 32
    - scsi: mpi3mr: Add support for status reply descriptor
    - scsi: mpi3mr: driver version upgrade to 8.5.0.0.50
    - scsi: mpi3mr: Refresh sdev queue depth after controller reset
    - scsi: mpi3mr: Clean up block devices post controller reset
    - scsi: mpi3mr: Block PEL Enable Command on Controller Reset and Unrecoverable
      State
    - scsi: mpi3mr: Fetch correct device dev handle for status reply descriptor
    - scsi: mpi3mr: Support for preallocation of SGL BSG data buffers part-1
    - scsi: mpi3mr: Support for preallocatio...

Changed in linux-gcp (Ubuntu Mantic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.