Re: [PATCH] PCI: hv: Replace retarget_msi_interrupt_params with hyperv_pcpu_input_arg

From: Wei Liu
Date: Wed Apr 12 2023 - 21:41:45 EST


On Tue, Apr 11, 2023 at 05:27:41PM +0000, Michael Kelley (LINUX) wrote:
> From: Dexuan Cui <decui@xxxxxxxxxxxxx> Sent: Saturday, April 8, 2023 2:11 PM
> >
> > 4 commits are involved here:
> > A (2016): commit 0de8ce3ee8e3 ("PCI: hv: Allocate physically contiguous hypercall
> > params buffer")
> > B (2017): commit be66b6736591 ("PCI: hv: Use page allocation for hbus structure")
> > C (2019): commit 877b911a5ba0 ("PCI: hv: Avoid a kmemleak false positive caused by
> > the hbus buffer")
> > D (2018): commit 68bb7bfb7985 ("X86/Hyper-V: Enable IPI enlightenments")
> >
> > Patch D introduced the per-CPU hypercall input page "hyperv_pcpu_input_arg"
> > in 2018. With patch D, we no longer need the per-Hyper-V-PCI-bus hypercall
> > input page "hbus->retarget_msi_interrupt_params" that was added in patch A,
> > and the issue addressed by patch B is no longer an issue, and we can also
> > get rid of patch C.
> >
> > The change here is required for PCI device assignment to work for
> > Confidential VMs (CVMs), because otherwise we would have to call
> > set_memory_decrypted() for "hbus->retarget_msi_interrupt_params" before
> > calling the hypercall HVCALL_RETARGET_INTERRUPT.
>
> Well, not all CVMs. It's not required for SEV-SNP vTOM VMs on Hyper-V because
> of the paravisor. Is it more accurate to say "for Confidential VMs (CVMs) running
> without a paravisor"?
>

Let me know how this text should be reworded.

> Otherwise,
>
> Reviewed-by: Michael Kelley <mikelley@xxxxxxxxxxxxx>