Hi Am 20.03.23 um 02:47 schrieb Samuel Čavoj: > Hi, > >> diff --git a/drivers/video/aperture.c b/drivers/video/aperture.c >> index f42a0d8bc211..101e13c2cf41 100644 >> --- a/drivers/video/aperture.c >> +++ b/drivers/video/aperture.c >> @@ -8,6 +8,7 @@ >>  #include >>  #include >>  #include >> +#include >>  #include >>  #include >> >> @@ -286,7 +287,20 @@ int >> aperture_remove_conflicting_devices(resource_size_t base, >> resource_size_t si >>  #if IS_REACHABLE(CONFIG_FB) >>      struct apertures_struct *a; >>      int ret; >> +#endif >> + >> +    /* >> +     * If a driver asked to unregister a platform device registered by >> +     * sysfb, then can be assumed that this is a driver for a display >> +     * that is set up by the system firmware and has a generic driver. >> +     * >> +     * Drivers for devices that don't have a generic driver will never >> +     * ask for this, so let's assume that a real driver for the display >> +     * was already probed and prevent sysfb to register devices later. >> +     */ >> +    sysfb_disable(); > > This call to sysfb_disable() has been causing trouble with regard to > VFIO. VFIO has been calling aperture_remove_conflicting_pci_devices to > get rid of any console drivers (d173780620792c) using the device in > question, but now even unrelated drivers are getting killed. Example > situation: Which drivers do you use? Best regards Thomas > > Machine has two GPUs and uses efifb for the console. Efifb registers > with the aperture system the efi framebuffer region, which is covered > by a BAR resource of GPU 1. VFIO grabs GPU 2 and calls > aperture_remove_conflicting_pci_devices(GPU 2). GPU 2 has no overlap > with the efifb on GPU1 but the efifb is killed regardless due to > the unconditional call to sysfb_disable(). The console switches > to dummy and locks up from the user perspective. > This seems unnecessary, as the device is unrelated. > > I do not quite understand the comment justifying the call. > > Some discussions with workarounds: > https://old.reddit.com/r/VFIO/comments/11qei4t/framebuffer_doesnt_work_anymore_after_passthrough/ > https://bbs.archlinux.org/viewtopic.php?id=280512 > > > Thanks, > Samuel -- Thomas Zimmermann Graphics Driver Developer SUSE Software Solutions Germany GmbH Maxfeldstr. 5, 90409 Nürnberg, Germany (HRB 36809, AG Nürnberg) Geschäftsführer: Ivo Totev