lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240430152430.4245-1-suravee.suthikulpanit@amd.com>
Date: Tue, 30 Apr 2024 15:24:21 +0000
From: Suravee Suthikulpanit <suravee.suthikulpanit@....com>
To: <linux-kernel@...r.kernel.org>, <iommu@...ts.linux.dev>, <joro@...tes.org>
CC: <thomas.lendacky@....com>, <vasant.hegde@....com>, <michael.roth@....com>,
	<jon.grimm@....com>, <rientjes@...gle.com>, Suravee Suthikulpanit
	<suravee.suthikulpanit@....com>
Subject: [PATCH 0/9] iommu/amd: Add AMD IOMMU emulation support for SEV-SNP guest kernel

To boot a VM w/ x2APIC ID > 255, guest interrupt remapping emulation 
is required. For SEV guest, this can be achieved using an emulated
AMD IOMMU.

In order to support emulated AMD IOMMU in SEV guest, memory pages used
by the guest IOMMU data structures must be in decrypted mode. Also GPAs
for these pages must not have the memory encryption bit set.

Testing:
  - Booting Linux SEV guest w/ 512 vcpus w/ QEMU emulated amd-iommu with
    qemu-system-x86_64 option: -device amd-iommu,intremap=on,xtsup=on
    (emulated devices only for now).

GIT repos:
* https://github.com/AMDESE/linux-iommu/tree/iommu_next_sev-iommu-v1 

Thanks,
Suravee

Suravee Suthikulpanit (9):
  iommu/amd: Introduce helper functions for managing IOMMU memory
  iommu/amd: Convert Device Table pointer to use struct amd_iommu_mem
  iommu/amd: Convert Command Buffer pointer to use struct amd_iommu_mem
  iommu/amd: Convert Completion-Wait Semaphore pointer to use struct
    amd_iommu_mem
  iommu/amd: Convert Event Log pointer to use struct amd_iommu_mem
  iommu/amd: Convert PPR Log pointer to use the struct amd_iommu_mem
  iommu/amd: Remove iommu_alloc_4k_pages() helper function
  iommu/amd: Decrypt interrupt remapping table for AMD IOMMU emulation
    in SEV guest
  iommu/amd: Set default domain to IDENTITY_DOMAIN when running in SEV
    guest

 drivers/iommu/amd/amd_iommu.h       |  31 +++++-
 drivers/iommu/amd/amd_iommu_types.h |  28 ++++--
 drivers/iommu/amd/init.c            | 144 +++++++++++++++-------------
 drivers/iommu/amd/iommu.c           | 133 +++++++++++++++++++------
 drivers/iommu/amd/ppr.c             |  22 +++--
 5 files changed, 246 insertions(+), 112 deletions(-)

-- 
2.34.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ