On Wed, 2022-01-19 at 17:36 +0100, Javier Martinez Canillas wrote: > On 1/19/22 16:50, Thomas Zimmermann wrote: > > [snip] > > > > > > IMHO the best solution is to drop IORESOURCE_BUSY from sysfb > > > > > and have > > > > > drivers register/release the range with _BUSY. That would > > > > > signal the > > > > > memory belongs to the sysfb device but is not busy unless a > > > > > driver > > > > > has > > > > > been bound. After simplefb released the range, it should be > > > > > 'non- > > > > > busy' > > > > > again and available for vmwgfx. Simpledrm does a hot-unplug of > > > > > the > > > > > sysfb > > > > > device, so the memory range gets released entirely. If you > > > > > want, I'll > > > > > prepare some patches for this scenario. > > > > > > > > Attached is a patch that implements this. Doing > > > > > > > > cat /proc/iomem > > > > ... > > > > e0000000-efffffff : 0000:00:02.0 > > > > > > > > e0000000-e07e8fff : BOOTFB > > > > > > > > e0000000-e07e8fff : simplefb > > > > > > > > ... > > > > > > > > shows the memory. 'BOOTFB' is the simple-framebuffer device and > > > > 'simplefb' is the driver. Only the latter uses _BUSY. Same for > > > > and the memory canbe acquired by vmwgfx. > > > > > > > > Zack, please test this patch. If it works, I'll send out the real > > > > patchset. > > > > > > Hmm, the patch looks good but it doesn't work. After boot: > > > /proc/iomem > > > 50000000-7fffffff : pcie@0x40000000 > > > 78000000-7fffffff : 0000:00:0f.0 > > > 78000000-782fffff : BOOTFB > > > > > > and vmwgfx fails on pci_request_regions: > > > > > > kernel: fb0: switching to vmwgfx from simple > > > kernel: Console: switching to colour dummy device 80x25 > > > kernel: vmwgfx 0000:00:0f.0: BAR 2: can't reserve [mem 0x78000000- > > > 0x7fffffff 64bit pref] > > > kernel: vmwgfx: probe of 0000:00:0f.0 failed with error -16 > > > > > > leaving the system without a fb driver. > > > > OK, I suspect that it would work if you use simpledrm instead of > > simplefb. Could you try please? You'd have to build DRM and simpledrm > > into the kernel binary. > > > > Yes, I believe that should work. > Zack, could you please try if just the following [0] make it works ? Unfortunately that still fails with the same: kernel: fb0: switching to vmwgfx from simple kernel: Console: switching to colour dummy device 80x25 kernel: vmwgfx 0000:00:0f.0: BAR 2: can't reserve [mem 0x78000000- 0x7fffffff 64bit pref] kernel: vmwgfx: probe of 0000:00:0f.0 failed with error -16 z