On 12/17/19 4:44 PM, Alex Williamson wrote:
On Tue, 17 Dec 2019 16:06:47 -0300
Daniel Henrique Barboza <danielhb413(a)gmail.com> wrote:
> Signed-off-by: Daniel Henrique Barboza <danielhb413(a)gmail.com>
> ---
> docs/news.xml | 14 ++++++++++++++
> 1 file changed, 14 insertions(+)
>
> diff --git a/docs/news.xml b/docs/news.xml
> index 2a25b6ca49..febda970f6 100644
> --- a/docs/news.xml
> +++ b/docs/news.xml
> @@ -54,6 +54,20 @@
> written in the RST as an alternative to HTML.
> </description>
> </change>
> + <change>
> + <summary>
> + new PCI hostdev address type: unassigned
> + </summary>
> + <description>
> + A new PCI hostdev address type 'unassigned' is introduced,
> + giving users the option to choose which PCI hostdevs
> + within the same IOMMU group will not be assigned to the
> + guest. PCI hostdevs that shouldn't be used by the guest
> + can be classified as <code>address
type='unassigned'</code>.
> + Libvirt will still be able to manage the device as a
> + regular PCI hostdev.
> + </description>
This is rather convoluted. Users have always had the choice of which
devices NOT to assign. I would present this as a mechanism for libvirt
to manage the driver binding of devices, as done for managed PCI hostdev
devices, without actually attaching the devices to the VM, thereby
facilitating device assignment when only a subset of the devices within
an IOMMU group are intended to be used by the guest.
Thanks. I'll resend the series with a better tone in the docs and the
commit message of patch 1.
BTW, this should also work with the hostdev <driver='kvm'/> option if
the user wanted to bind the device to pci-stub rather than vfio-pci to
provide even further isolation from the user being able to access the
device. Thanks,
After dropping the heavy validation logic I was doing in the previous versions,
it should work with driver='kvm' as well. What the code is doing now is
removing any device marked as unassigned from QEMU launch command. If QEMU is
fine with the pci-stub setup the user is setting up, this code will not stand
in the way.
Thanks,
DHB
Alex
> + </change>
> </section>
> <section title="Improvements">
> <change>