Re: [PATCH 0/2] Improve vfio-pci primary GPU assignment behavior

Gerd Hoffmann
2022-06-08T08:16:24Z

Hi,

> But also, this issue isn't something that only affects graphic devices,
> right? AFAIU from [1] and [2], the same issue happens if a PCI device
> has to be bound to vfio-pci but already was bound to a host driver.

Nope. There is a standard procedure to bind and unbind pci drivers via
sysfs, using /sys/bus/pci/drivers/$name/{bind,unbind}.

> The fact that DRM happens to have some infrastructure to remove devices
> that conflict with an aperture is just a coincidence.

No. It's a consequence of firmware framebuffers not being linked to the
pci device actually backing them, so some other way is needed to find
and solve conflicts.

> The series [0] mentioned above, adds a sysfb_disable() that disables the
> Generic System Framebuffer logic that is what registers the framebuffer
> devices that are bound to these generic video drivers. On disable, the
> devices registered by sysfb are also unregistered.

As Alex already mentioned this might not have the desired effect on
systems with multiple GPUs (I think even without considering vfio-pci).

> That is, do you want to remove the {vesa,efi,simple}fb and simpledrm
> drivers or is there a need to also remove real fbdev and DRM drivers?

Boot framebuffers are the problem because they are neither visible nor
manageable in /sys/bus/pci. For real fbdev/drm drivers the standard pci
unbind can be used.

take care,
Gerd