On 13/03/25 20:39, Paolo Bonzini wrote: > On Thu, Mar 13, 2025 at 7:16 PM Adrian Hunter <adrian.hunter@xxxxxxxxx> wrote: >> Improve TDX shutdown performance by adding a more efficient shutdown >> operation at the cost of adding separate branches for the TDX MMU >> operations for normal runtime and shutdown. This more efficient method was >> previously used in earlier versions of the TDX patches, but was removed to >> simplify the initial upstreaming. This is an RFC, and still needs a proper >> upstream commit log. It is intended to be an eventual follow up to base >> support. > > In the latest code the HKID is released in kvm_arch_pre_destroy_vm(). I am looking at kvm-coco-queue > That is before kvm_free_memslot() calls kvm_gmem_unbind(), which > results in fput() and hence kvm_gmem_release(). > > So, as long as userspace doesn't remove the memslots and close the > guestmemfds, shouldn't the TD_TEARDOWN method be usable? kvm_arch_pre_destroy_vm() is called from kvm_destroy_vm() which won't happen before kvm_gmem_release() calls kvm_put_kvm().