Re: [PATCH] radeon: Test for PCI root bus before assuming bus->self

From: Alex Williamson
Date: Wed Aug 27 2014 - 22:10:04 EST


On Thu, 2014-08-28 at 11:32 +1000, Dave Airlie wrote:
> > On Wed, Aug 27, 2014 at 3:01 PM, Alex Williamson
> > <alex.williamson@xxxxxxxxxx> wrote:
> >> If we assign a Radeon device to a virtual machine, we can no longer
> >> assume a fixed hardware topology, like the GPU having a parent device.
> >> This patch simply adds a few pci_is_root_bus() tests to avoid passing
> >> a NULL pointer to PCI access functions, allowing the radeon driver to
> >> work in a QEMU 440FX machine with an assigned HD8570 on the emulated
> >> PCI root bus.
> >>
> >> Signed-off-by: Alex Williamson <alex.williamson@xxxxxxxxxx>
> >
>
> Does this mean inside a VM we can't enable pcie 2 speeds?

Shouldn't the device already be set to something reasonable before it's
assigned?

> This could lead to a quite disappointing speed decrease for DMA transfers.

We couldn't do it before anyway, there's no decrease. Even with a Q35
QEMU chipset the best we were doing was tweaking dummy registers on the
upstream port. Should VFIO be doing bus tuning prior to exposing the
device? I suppose our other option would be to let the link control
bits of the emulated downstream port pass through to the host. In any
case, I don't see that this patch limits performance any more than it
already is for a VM. Thanks,

Alex

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/