Skip to content

Update KVM-TDX.README.md with BKC reference wiki link #2

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 443 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
443 commits
Select commit Hold shift + click to select a range
dad0333
KVM: TDX: allocate/free TDX vcpu structure
yamahata Dec 14, 2021
e05ce01
KVM: TDX: Do TDX specific vcpu initialization
Sep 19, 2020
214d885
[MARKER] The start of TDX KVM patch series: KVM MMU GPA shared bits
yamahata Feb 18, 2022
fa5a472
KVM: x86/mmu: introduce config for PRIVATE KVM MMU
yamahata Feb 1, 2022
69f4b49
KVM: x86/mmu: Add address conversion functions for TDX shared bits
rpedgeco Jul 14, 2020
a08806c
[MARKER] The start of TDX KVM patch series: KVM TDP refactoring for TDX
yamahata Feb 18, 2022
71e4c19
KVM: x86/mmu: Explicitly check for MMIO spte in fast page fault
Aug 9, 2019
f74b05e
KVM: x86/mmu: Allow non-zero value for non-present SPTE
Jul 30, 2019
242df8a
KVM: x86/mmu: Track shadow MMIO value/mask on a per-VM basis
Jun 10, 2020
8718a5e
KVM: x86/mmu: Disallow fast page fault on private GPA
yamahata Jan 28, 2022
e686602
KVM: x86/mmu: Allow per-VM override of the TDP max page level
Jun 10, 2020
27acc4b
KVM: x86/mmu: Zap only leaf SPTEs for deleted/moved memslot for priva…
Jun 19, 2020
cadf322
KVM: VMX: Introduce test mode related to EPT violation VE
yamahata Apr 27, 2022
082bd1d
[MARKER] The start of TDX KVM patch series: KVM TDP MMU hooks
yamahata Feb 18, 2022
c198d2b
KVM: x86/mmu: Focibly use TDP MMU for TDX
yamahata Jan 21, 2022
392839e
KVM: x86/mmu: Add a private pointer to struct kvm_mmu_page
yamahata Jan 26, 2022
ac43e3e
KVM: x86/tdp_mmu: refactor kvm_tdp_mmu_map()
yamahata Jan 12, 2022
94524fe
KVM: x86/tdp_mmu: Support TDX private mapping for TDP MMU
yamahata Jan 27, 2022
9d0cbb0
[MARKER] The start of TDX KVM patch series: TDX EPT violation
yamahata Feb 18, 2022
eb806a9
KVM: x86/mmu: Disallow dirty logging for x86 TDX
Nov 12, 2021
8d2266b
KVM: x86/tdp_mmu: Ignore unsupported mmu operation on private GFNs
yamahata Jan 24, 2022
5202bef
KVM: VMX: Split out guts of EPT violation to common/exposed function
Jul 30, 2019
28893d8
KVM: VMX: Move setting of EPT MMU masks to common VT-x code
Jun 3, 2020
b732788
KVM: TDX: Add load_mmu_pgd method for TDX
Jun 25, 2020
bcdcc41
KVM: TDX: don't request KVM_REQ_APIC_PAGE_RELOAD
yamahata Mar 31, 2022
e43d6ef
KVM: TDX: TDP MMU TDX support
yamahata Jan 20, 2022
874326b
[MARKER] The start of TDX KVM patch series: KVM TDP MMU MapGPA
yamahata Feb 18, 2022
5ebf360
KVM: x86/mmu: steal software usable git to record if GFN is for share…
yamahata Jan 11, 2022
7cda277
KVM: x86/tdp_mmu: implement MapGPA hypercall for TDX
yamahata Jan 12, 2022
5b00a09
KVM: x86/mmu: Introduce kvm_mmu_map_tdp_page() for use by TDX
Jun 10, 2020
d385bde
[MARKER] The start of TDX KVM patch series: TD finalization
yamahata Feb 18, 2022
2729dc7
KVM: TDX: Create initial guest memory
yamahata Dec 14, 2021
9982a3c
KVM: TDX: Finalize VM initialization
yamahata Dec 14, 2021
00c9d7b
[MARKER] The start of TDX KVM patch series: TD vcpu enter/exit
yamahata Feb 18, 2022
3165b10
KVM: TDX: Add helper assembly function to TDX vcpu
yamahata Dec 14, 2021
b3eae6d
KVM: TDX: Implement TDX vcpu enter/exit path
yamahata Dec 15, 2021
2b8f650
KVM: TDX: vcpu_run: save/restore host state(host kernel gs)
yamahata Dec 22, 2021
edb3a09
KVM: TDX: restore host xsave state when exit from the guest TD
yamahata Dec 22, 2021
8b4cf41
KVM: x86: Allow to update cached values in kvm_user_return_msrs w/o w…
gaochaointel Nov 18, 2021
e85819d
KVM: TDX: restore user ret MSRs
yamahata Dec 22, 2021
34c8611
[MARKER] The start of TDX KVM patch series: TD vcpu exits/interrupts/…
yamahata Feb 18, 2022
035b617
KVM: TDX: complete interrupts after tdexit
yamahata Dec 22, 2021
bbcb1bc
KVM: TDX: restore debug store when TD exit
yamahata Dec 22, 2021
b48524d
KVM: TDX: handle vcpu migration over logical processor
yamahata Dec 22, 2021
105e8d5
KVM: x86: Add a switch_db_regs flag to handle TDX's auto-switched beh…
yamahata Dec 22, 2021
d68ee4d
KVM: TDX: Add support for find pending IRQ in a protected local APIC
sean-jc Apr 8, 2022
a4bb180
KVM: x86: Assume timer IRQ was injected if APIC state is proteced
sean-jc Apr 8, 2022
132314e
KVM: TDX: remove use of struct vcpu_vmx from posted_interrupt.c
yamahata May 4, 2022
cd93965
KVM: TDX: Implement interrupt injection
yamahata Dec 23, 2021
a12e60b
KVM: TDX: Implements vcpu request_immediate_exit
yamahata Dec 15, 2021
77e4908
KVM: TDX: Implement methods to inject NMI
yamahata Dec 14, 2021
331244f
KVM: VMX: Modify NMI and INTR handlers to take intr_info as function …
Apr 19, 2019
2c9fa7e
KVM: VMX: Move NMI/exception handler to common helper
May 5, 2022
e852a5f
KVM: x86: Split core of hypercall emulation to helper function
Apr 19, 2019
67130af
KVM: TDX: Add a place holder to handle TDX VM exit
yamahata Dec 14, 2021
b2b3466
KVM: TDX: handle EXIT_REASON_OTHER_SMI
yamahata Dec 15, 2021
31487c5
KVM: TDX: handle ept violation/misconfig exit
yamahata Dec 14, 2021
98e0297
KVM: TDX: handle EXCEPTION_NMI and EXTERNAL_INTERRUPT
yamahata Dec 14, 2021
624d111
KVM: TDX: Add a place holder for handler of TDX hypercalls (TDG.VP.VM…
yamahata Dec 14, 2021
84daf51
KVM: TDX: handle KVM hypercall with TDG.VP.VMCALL
yamahata Dec 23, 2021
af6eee7
KVM: TDX: Handle TDX PV CPUID hypercall
yamahata Dec 23, 2021
57238c8
KVM: TDX: Handle TDX PV HLT hypercall
yamahata May 4, 2022
39fb8ac
KVM: TDX: Handle TDX PV port io hypercall
yamahata Dec 23, 2021
daa1360
KVM: TDX: Handle TDX PV MMIO hypercall
May 21, 2019
6a5c0a3
KVM: TDX: Implement callbacks for MSR operations for TDX
yamahata Dec 15, 2021
fa2437b
KVM: TDX: Handle TDX PV rdmsr/wrmsr hypercall
yamahata Dec 23, 2021
fc9fa16
KVM: TDX: Handle TDX PV report fatal error hypercall
yamahata Dec 23, 2021
86da659
KVM: TDX: Handle TDX PV map_gpa hypercall
yamahata Dec 23, 2021
76d4e3c
KVM: TDX: Handle TDG.VP.VMCALL<GetTdVmCallInfo> hypercall
yamahata Feb 11, 2022
bc17eaf
KVM: TDX: Silently discard SMI request
yamahata Dec 8, 2021
e8658a7
KVM: TDX: Silently ignore INIT/SIPI
yamahata Dec 9, 2021
ef90fa3
KVM: TDX: Add methods to ignore accesses to CPU state
Nov 15, 2019
9e54fa1
Documentation/virtual/kvm: Document on Trust Domain Extensions(TDX)
yamahata Jan 23, 2021
7af4efe
KVM: x86: design documentation on TDX support of x86 KVM TDP MMU
yamahata Jan 20, 2022
7fd811c
[MARKER] the end of (the first phase of) TDX KVM patch series
yamahata Mar 3, 2022
c0bb5bf
KVM: TDX: make tdx_protected_apic_has_interrupt for device assignment
yamahata May 5, 2022
ef4a0da
KVM: TDX: Handle bus lock exit
yamahata Dec 23, 2021
fd01a3f
KVM: TDX: Exit to device model on GET_QUOTE, SETUP_EVENT_NOTIFY_INTER…
yamahata Nov 20, 2020
eea6fdb
x86/traps: Do not use split lock mode on Sapphire Rapids
Jun 23, 2021
8b9c580
[REVERTME] KVM: x86: Mark the VM (TD) as bugged if non-coherent DMA i…
Jun 10, 2020
e18ef0b
[REVERTME] KVM: TDX: add WARN_ON to to_kvm_vmx, to_vmx, to_kvm_tdx, t…
yamahata May 4, 2022
9bf54f1
[REVERTME] KVM: TDX: Skip #MSMI induced #MC handling and handle it as…
calmisi Mar 5, 2021
5a457b5
[REVERTME] KVM: TDX: Fixup fatal #MC happens in TD guest that deliver…
calmisi Mar 5, 2021
ca7a1f8
[REVERTME] x86: TDX: Add TDX host config for SPR testing
calmisi Nov 25, 2020
122d8f9
[REVERTME] KVM: TDX: explicitly log triple fault with guest rip
calmisi Feb 1, 2021
4def1e7
[REVERTME] x86/cpu/tsx: Add helper functions to save/restore IA32_TSX…
yamahata Nov 16, 2021
ad264b6
[REVERTME] x86/cpu/tsx: Add helper functions to save/restore IA32_TSX…
yamahata Nov 16, 2021
caa9860
[REVERTME] KVM/TDX: add IA32_TSX_CTRL MSR save/restore around TDH.VP.…
Qiangcy Oct 18, 2021
3bae6c9
[REVERTME] x86/kvm/tdx: use R10 value for KVM hypercall numbedr
yamahata Nov 17, 2021
a66cb0f
[REVERTME] workaround to avoid KVM_CAP conflict in the upstrewam
yamahata Dec 13, 2021
c562537
[REVERTME] workaround to avoid conflict with KVM_EXIT_TDX in the upst…
yamahata Dec 16, 2021
e1c6ec9
[REVERTME] printout symbolic TDX op code and status code for debug
yamahata Jan 14, 2022
3942ce9
[REVERTME] KVM: x86/mmu: add WARN_ON for debug
yamahata Jan 26, 2022
04a53fd
[REVERTME] TDX: Add kernel params to disable SEAM tracing
yamahata Feb 3, 2022
d5ef6f8
[REVERTME] debugfs to operation on TDX debug op
yamahata Feb 8, 2022
0f630fc
[REVERTME] KVM: TDX: x86/tdp_mmu: add debug message on hit SPTE_SHARE…
yamahata Mar 3, 2022
8c11df6
[REVERTME] X86: KVM: fix print format errors with MMU_DEBUG with 64bit
yamahata Mar 21, 2022
6dd29ad
[REVERTME] KVM: x86: suppress warning of "Invalid MSR"
yamahata Mar 23, 2022
2ec4ebb
[REVERTME] fix undefined symbol of cc_init
yamahata Mar 2, 2022
8d82d7f
[REVERTME]: comment out pr_info() that causes lockdep error
yamahata Apr 11, 2022
259360b
[REVERTME] KVM: TDX: Workaround suspected TDX-SEAM TLB tracking bug
Jun 30, 2020
72ed1c1
KVM: x86/mmu: add SPTE_PRIVATE_ZAPPED
yamahata Jan 20, 2022
9e6e82b
KVM: x86/tdp_mmu: optimize remote tlb flush
yamahata Jan 19, 2022
88d4424
KVM: x86: Add section about TLB flush optimization of x86 KVM TDP MMU…
yamahata Feb 10, 2022
c3b2d3a
KVM: x86/legacy mmu: factor out __direct_map()
yamahata Jan 12, 2022
8dbf9e2
KVM: x86/legacy mmu: Return old SPTE from mmu_spte_clear_track_bits()
Jun 10, 2020
590f3c1
KVM: x86/mmu: Frame in support for private/inaccessible shadow pages
yamahata Jan 27, 2022
d1d5b3f
KVM: x86/legacy mmu: add legacy mmu bits
yamahata Apr 26, 2022
a98374b
KVM: TDX: drop unzapped private spte when flushing memslot
yamahata Jul 12, 2021
0e40130
KVM: x86/legacy mmu: prohibit mapping private or shared page for lega…
yamahata Jan 20, 2022
1bba36d
KVM: x86/legacy mmu: implement MapGPA for legacy KVM MMU
yamahata Jan 12, 2022
10498ca
KVM: x86/mmu: Allow TDX VM for legacy MMU
yamahata Jan 28, 2022
b3b66d4
KVM: x86: design documentation on TDX support of x86 legacy KVM MMU
yamahata Feb 10, 2022
1a729b4
KVM: TDX: add trace point for TDG.VP.VMCALL
yamahata Mar 27, 2022
bfaa067
KVM: TDX: Retry seamcall when TDX_OPERAND_BUSY with operand SEPT
YuanYao0329 Feb 11, 2022
3157e6f
TDX: AMX: enable AMX feature in the TD VM
yangzhon Feb 24, 2022
9dab9d6
KVM: TDX: Enable CET in TD VM
Qiangcy Mar 17, 2022
9aa41ac
KVM: TDX: handle exception when debug attribute is enabled
yamahata Mar 4, 2022
fd731a3
KVM: TDX: documentation: KVM_CAP_VM_TYPES
yamahata Mar 9, 2022
38171b7
x86/virt/tdx: Export TDX keyid number and status of TDX module via sysfs
yamahata Mar 12, 2022
2e30dfc
x86/virt/tdx: Export information about the TDX module via sysfs
yamahata Mar 12, 2022
9514bb1
KVM: selftest: Add support for creating non-default type VMs
ruleof2 Jul 26, 2021
92e1fc7
KVM: selftest: Add helper functions to create TDX VMs
ruleof2 Jul 26, 2021
92c6f4d
KVM: selftest: Adding TDX life cycle test.
ruleof2 Jul 26, 2021
e787111
KVM: selftest: Adding test case for TDX port IO
ruleof2 Jul 26, 2021
4b492fc
KVM: selftest: tdx: call KVM_TDX_CAPABILITIES for test
yamahata Mar 16, 2022
bdc1876
KVM: selftest: TDX: adjust CET and AMX for cpuid(eax=0xd, ecx=0x0)
yamahata Mar 17, 2022
e4f585d
KVM: selftest: TDX: use symbolic value for KVM mp state
yamahata Mar 17, 2022
7965ca5
[REVERTME] KVM: selftest: support old TDX KVM KVM_VM_TYPE ABI
yamahata Mar 19, 2022
7848f86
[REVERTME] KVM: selftest: TDX: use kvm systemwide fd for KVM_TDX_CAPA…
yamahata Mar 19, 2022
61a379e
x86: mce: mask out memory encryption id bits from address reported fo…
yamahata Apr 7, 2022
d65d1c7
KVM: x86/mmu: Add RET_PF_CONTINUE to eliminate bool+int* "returns"
sean-jc Apr 28, 2022
0c030fb
mm: Introduce memfile_notifier
chao-p Jan 12, 2022
8cb35e9
mm/shmem: Support memfile_notifier
kiryl Jan 12, 2022
fbff252
mm/memfd: Introduce MFD_INACCESSIBLE flag
chao-p May 17, 2022
088ff1f
KVM: Extend the memslot to support fd-based private memory
chao-p Nov 15, 2021
b66e634
KVM: Add KVM_EXIT_MEMORY_FAULT exit
chao-p Nov 19, 2021
e65f35a
KVM: Handle page fault for private memory
chao-p Jan 14, 2022
e767409
KVM: Enable and expose KVM_MEM_PRIVATE
chao-p Jan 14, 2022
2d5eaa5
KVM: return EBADF for KVM_SET_USER_MEMORY with KVM_MEM_PRIVATE
yamahata Apr 14, 2022
573d8a7
KVM: TDX: handle private slot to get/put_page() when adding/removing …
yamahata Apr 12, 2022
5ac7027
KVM: TDX: exit to user space VMM on TDG.VP.VMCALL<MapGPA>
yamahata Apr 12, 2022
ad27330
TDX: Use private memory for TDX
chao-p Nov 9, 2021
99b4f80
[REVERTME] bump KVM_EXIT_MEMORY_FAULT to avoid merge conflict
yamahata May 25, 2022
dcf06c9
[REVERTME] dont exit to KVM on map_gpa hypercall when non-private mem…
yamahata Apr 14, 2022
7a349da
Revert "[REVERTME] dont exit to KVM on map_gpa hypercall when non-pri…
yamahata Apr 14, 2022
8f169cb
README: add README for TDX KVM
yamahata Apr 19, 2022
bd8b255
x86/cpu/tsx: fix kernel crash during S3 resume
yamahata Apr 20, 2022
c81895b
Update KVM-TDX.README.md
hongyuni Apr 21, 2022
6e4cc81
[REVERTME] KVM: selftest: catch up ABI change of struct kvm_tdx_init_vm
yamahata Apr 27, 2022
4e97562
KVM-TDX.README.md: describe upstreamed TDVF into edk2
yamahata May 5, 2022
70ca8ed
KVM: Introduce the KVM_MEMORY_ENCRYPT_{READ,WRITE}_MEMORY VM ioctl
YuanYao0329 Apr 21, 2022
01e9b25
KVM: TDX: Introduce KVM_MEMORY_ENCRYPT_READ_MEMORY handler for INTEL …
YuanYao0329 Apr 21, 2022
2734d36
KVM: Exports kvm_read_guest_atomic() from kvm.ko
YuanYao0329 Apr 21, 2022
fa0fa5f
KVM: MMU: Introduce kvm_mmu_is_page_private()
YuanYao0329 Apr 21, 2022
d55184c
KVM: TDX: Introuduce common shared part of reading/writing memory
YuanYao0329 Apr 21, 2022
b197333
KVM: TDX: Introduce memory reading specific functions
YuanYao0329 Apr 21, 2022
9c057cd
KVM: TDX: Introduce KVM_MEMORY_ENCRYPT_WRITE_MEMORY handler for INTEL…
YuanYao0329 Apr 21, 2022
e256fe1
KVM: Introduce kvm_write_guest_atomic()
YuanYao0329 Apr 21, 2022
f8ce761
KVM: TDX: Introduce memory writing specific functions
YuanYao0329 Apr 21, 2022
d3c8546
KVM: TDX: Support TDP MMU for reading/writing memory of DEBUG TDX guest
YuanYao0329 Apr 21, 2022
4df03a6
KVM: TDX: Support private memfd for DEBUG TDX guest
yamahata Apr 21, 2022
31b5565
KVM: X86: Documentation for KVM_MEMORY_ENCRYPT_{READ,WRITE}_MEMORY ioctl
YuanYao0329 Apr 21, 2022
e89df58
KVM: TDX: Add GPRS/STATE field and other definition for tdh_vp_{rd,wr}()
YuanYao0329 Apr 21, 2022
6213d2b
KVM: TDX: Support get GPRs and EXREGs for DEBUG TDX Guest
YuanYao0329 Apr 21, 2022
469dc82
KVM: VMX: Abstract kvm_vmx_segment_field[] and segment decoding code
YuanYao0329 Apr 21, 2022
44a6793
KVM: TDX: Support get segment and segment base for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
d450c1f
KVM: TDX: Support get CPL for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
d386ab0
KVM: TDX: Support get/set RFLAGS for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
d2f2809
KVM: TDX: Support get/set IDT for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
a5fb16e
KVM: TDX: Support get/set GDT for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
9eb184e
KVM: X86: Introduce kvm_x86_ops::get_cr2
YuanYao0329 Apr 21, 2022
b6f91a8
KVM: TDX: Support get CR2 for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
9437659
KVM: X86: Introduce kvm_x86_ops::get_xcr
YuanYao0329 Apr 21, 2022
1295928
KVM: TDX: Support get XCR0 for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
5f2a412
KVM: TDX: Enable register context for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
b8cc087
KVM: TDX: Basic exception injection support for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
41708c1
KVM: VMX: Add VMCS field accessing helpers for reusing VMX code
YuanYao0329 Apr 21, 2022
dec6780
KVM: VMX: Preparation of skip emulated instruction for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
c1a596e
KVM: VMX: Introduce tdx_skip_emulated_instruction()
YuanYao0329 Apr 21, 2022
14b70c3
KVM: X86: Introduce kvm_x86_ops::load_guest_debug_regs interface
YuanYao0329 Apr 21, 2022
58f4d10
KVM: TDX: Enable DR context switch for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
39d2966
KVM: TDX: Introduce handler of EXIT_REASON_DR_ACCESS for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
d2aca7e
KVM: TDX: Enable #BP and #DB interception
YuanYao0329 Apr 21, 2022
f2b7013
KVM: TDX: Clear interruptbility blocking for single step
YuanYao0329 Apr 21, 2022
a966271
KVM: TDX: Support set DR7 for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
b9002ba
KVM: TDX: Emulate the #BP injection for DEBUG TDX guest
YuanYao0329 Apr 21, 2022
3e5fa20
KVM: TDX: Align vcpu->arch.guest_state_protected with TDX guest
YuanYao0329 May 13, 2022
61881a8
[REVERTME] KVM: bump KVM_CAP_ENCRYPT_MEMORY_DEBUG to 300
yamahata Mar 29, 2022
f53ab7f
KVM: X86: Add struct kvm for kvm_x86_ops::check_apicv_inhibit_reasons
YuanYao0329 Apr 21, 2022
053de73
KVM: TDX: Introduce tdx_check_apicv_inhibit_reasons()
YuanYao0329 Apr 21, 2022
7f26eff
x86/tdx: Register TDX host key IDs to cgroup misc controller
May 10, 2022
ae62a2a
KVM: Add per-VM flag to mark read-only memory as unsupported
yamahata Jun 19, 2020
a0164b8
KVM: TDX: allow get_interrupt_shadow operation for debuggable TD
yamahata May 17, 2022
64b6b54
KVM: TDX: Add perfmon support for TD
gaochaointel Mar 28, 2021
6ecf439
KVM: TDX: Don't freeze lbr on PMI for TD vCPUs
gaochaointel May 20, 2021
8cd66e6
KVM: TDX: recognize and inject a guest PMI
gaochaointel May 20, 2021
60d3d06
KVM: TDX: Monitor debuggable and non-perfmon TDs with PMU events
gaochaointel Jul 23, 2021
d3d1e33
KVM: TDX: Allow PMU for guest TD
yamahata May 17, 2022
b3052bc
KVM: x86: ensure guest state is accessible in kvm_arch_pmi_in_guest()
gaochaointel Oct 27, 2021
cac6de5
KVM: TDX: Pass page level to cache flush before TDX SEAMCALL
calmisi Aug 31, 2021
341f95d
KVM: TDX: Pass KVM page level to tdh_mem_page_add() and tdh_mem_page_…
calmisi Aug 31, 2021
3fc3449
KVM: TDX: Pass size to tdx_measure_page()
calmisi Aug 31, 2021
4c7ed16
KVM: TDX: Pass size to reclaim_page()
calmisi Aug 31, 2021
4698353
KVM: MMU: Retain large page bit when zapping private spte
calmisi Aug 31, 2021
c5f98e2
KVM: TDX: Update tdx_sept_{set,drop}_private_spte() to support 2MB level
calmisi Aug 31, 2021
9ea497a
KVM: MMU: Introduce kvm_page_attr for each page level
calmisi Aug 31, 2021
aa7e272
KVM: MMU: Update page_attr->type when guest converts the page
calmisi Aug 31, 2021
246172e
KVM: MMU: Update max_level based on page_type
calmisi Aug 31, 2021
941ba34
KVM: TDX: Split a large page when 4KB page within it converted to shared
calmisi Aug 31, 2021
f13e810
KVM: MMU: Go to next level if smaller private mapping exists
calmisi Aug 31, 2021
dbf4a8c
KVM: MMU: TDX: split private large page if smaller level is desired
calmisi Aug 31, 2021
2f4282a
KVM: MMU: Introduce level info in PFERR code
calmisi Aug 31, 2021
b2782fc
KVM: TDX: Allow 2MB large page for TD GUEST
calmisi Aug 31, 2021
091926a
*** HACK *** KVM: selftests: Add random_() framework to common KVM code
Apr 2, 2020
630ec0a
x86: Introduce TDX_GUEST_PMI_VECTOR to handle PMI of TDX guest
YuanYao0329 Mar 22, 2022
e5b15a4
KVM: TDX: Do PMI injection for TDX guest
YuanYao0329 Mar 22, 2022
090ebe2
KVM: TDX: Remove guest_pmi_exit flag from struct vcpu_tdx
YuanYao0329 Mar 22, 2022
9356c2e
KVM: TDX: Refactor tdx_access_guest_memory()
YuanYao0329 May 23, 2022
92ad358
KVM: TDX: Refactor Wraps for tdx_guest_memory_operator::{prepare,fini…
YuanYao0329 May 23, 2022
9d2e67a
KVM: TDX: Check pte zap state before drop large private page
YuanYao0329 May 24, 2022
8df59df
KVM: x86/mmu: Use get_user_page_fast instead of get_user_page_fast_only
calmisi May 31, 2022
9b11123
Revert "KVM: TDX: Handle TDX PV map_gpa hypercall"
yamahata Jun 1, 2022
24de071
Revert "KVM: x86/tdp_mmu: implement MapGPA hypercall for TDX"
yamahata Jun 1, 2022
3917d76
Revert "KVM: x86/mmu: steal software usable git to record if GFN is f…
yamahata Jun 1, 2022
0f07eba
Revert "KVM: x86/legacy mmu: prohibit mapping private or shared page …
yamahata Jun 1, 2022
1260ba1
KVM: TDX: Pin pages via get_page() right before ADD/AUG'ed to TDs
calmisi May 25, 2022
ac66f7f
KVM: MMU: Let vcpu re-try when faulting page type conflict
calmisi May 25, 2022
ed97f40
KVM: MMU: Adjust fault->req_level based on page_type
calmisi May 25, 2022
3e45982
KVM: TDP_MMU: Go to next level if smaller private mapping exists
calmisi May 25, 2022
1af7fee
KVM: MMU: Pass desired page level in err code for page fault handler
calmisi May 25, 2022
95f817b
KVM: TDX: Split private spte for TDX
calmisi May 25, 2022
ea34237
KVM: tdp_mmu/tdx: Split the large page when zap leaf
calmisi May 25, 2022
dbe9349
KVM: x86/tdp_mmu: Implement MapGPA hypercall for TDX
calmisi May 25, 2022
c8a4587
KVM: TDX: Handle TDX PV map_gpa hypercall
calmisi May 25, 2022
cff1244
KVM: TDX: Allow 2M large page
calmisi May 25, 2022
bb83814
[REVERTME] KVM: TDX: print debug message
yamahata Jun 2, 2022
89763df
KVM: x86/tdp_mmu: replace is_leaf with is_last
yamahata Jun 3, 2022
95887d2
KVM: x86/tdp_mmu: Fix MapGpa for tdp_mmu
yamahata Jun 2, 2022
d3a7c38
KVM: x86/mmu: Add helper function to update linfo_count at update
yamahata Jun 3, 2022
2cf2a82
KVM: x86/mmu: update lpage_info on changing page_type
yamahata Jun 3, 2022
0e15365
KVM: x86/tdp_mmu: Unzap and split private large SPTE on KVM page fault
yamahata Jun 3, 2022
f86ce2e
KVM: x86/tdp_mmu: don't follow down of large spte
yamahata Jun 3, 2022
2b280ed
KVM: x86/tdp_mmu: Unalias gpa to get kvm memslot
yamahata Jun 4, 2022
3cb6d1e
KVM: x86/mmu: Make kvm fault handelr aware of large page of private m…
yamahata Jun 4, 2022
9e00de8
KVM: TDX: Exit on TDG.VP.VMCALL<MapGPA> to user on private kvm memslot
yamahata Jun 8, 2022
3ab9cdf
X86: FPU: Fix unexpected #PF while executing XRSTORS
YuanYao0329 May 26, 2022
d9ca697
KVM: Skip the memfile notification if not in the target range
Qiangcy Jun 1, 2022
8af973e
mm/memfile_notifier: Fix warning when CONFIG_MEMFILE_NOTIFIER is off
chao-p May 30, 2022
51a9d03
Update KVM-TDX.README.md with BKC reference wiki link
hongyuni Jun 29, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions Documentation/ABI/testing/sysfs-firmware-tdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
What: /sys/firmware/tdx/
Date: March 2022
KernelVersion: 5.17
Contact: Isaku Yamahata <isaku.yamahata@intel.com>, kvm@vger.kernel.org
Description:
Intel's Trust Domain Extensions (TDX) protect guest VMs from
malicious hosts and some physical attacks. This directory
represents the entry point directory for the TDX.

the TDX requires the TDX firmware to load into an isolated
memory region. It requires a two-step loading process. It uses
the first phase firmware loader (a.k.a NP-SEAMLDR) that loads
the next loader and the second phase firmware loader(a.k.a
P-SEAMLDR) that loads the TDX firmware(a.k.a the "TDX module").
=============== ================================================
keyid_num the number of SEAM keyid as an hexadecimal
number with the "0x" prefix.
=============== ================================================
Users: libvirt

What: /sys/firmware/tdx/tdx_module/
Date: March 2022
KernelVersion: 5.17
Contact: Isaku Yamahata <isaku.yamahata@intel.com>, kvm@vger.kernel.org
Description:
The TDX requires a firmware as known as the TDX module. It comes
with its attributes, vendor_id, build_data, build_num,
minor_version, major_version, etc.

Provides the information about the TDX module loaded on the
platform. It contains the following read-only files. The
information corresponds to the data structure, TDSYSINFO_STRUCT.
The admins or VMM management software like libvirt can refer to
that information, determine if TDX is supported, and identify
the loaded the TDX module.

================== ============================================
status string of the TDX module status.
"unknown"
"none": the TDX module is not loaded
"loaded": The TDX module is loaded, but not
initialized
"initialized": the TDX module is fully
initialized
"shutdown": the TDX module is shutdown due to
error during initialization.
attributes 32bit flags of the TDX module attributes as
a hexadecimal number with the "0x" prefix.
Bits 31 - a production module(0) or
a debug module(1).
Bits 30:0 Reserved - set to 0.
vendor_id vendor ID as a hexadecimal number with the
"0x" prefix.
build_date build date in yyyymmdd BCD format.
build_num build number as a hexadecimal number with
the "0x" prefix.
minor_version minor version as a hexadecimal number with
the "0x" prefix.
major_version major versionas a hexadecimal number with
the "0x" prefix.
================== ============================================
Users: libvirt
1 change: 0 additions & 1 deletion Documentation/admin-guide/kernel-parameters.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2469,7 +2469,6 @@

protected: nVHE-based mode with support for guests whose
state is kept private from the host.
Not valid if the kernel is running in EL2.

Defaults to VHE/nVHE based on hardware support. Setting
mode to "protected" will disable kexec and hibernation
Expand Down
Loading