qemu-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-discuss] Rebinding efifb and vtconsole after rebinding to boot gpu


From: Alex John
Subject: [Qemu-discuss] Rebinding efifb and vtconsole after rebinding to boot gpu
Date: Tue, 24 Jul 2018 18:20:31 +0800
User-agent: NeoMutt/20180716

I'm using qemu with PCI passthrough to run a Windows VM. I have the following
hardware

  GPU1 (boot vga): 1080 GTX
  GPU2 (iGPU): i965 (i7 8700k)

I'm on 4.17.9 with CONFIG_FB_EFI set. GPU 1 does not do any KMS on init.

I do more work on the host than on the vm, so I prefer to boot from the 1080GTX
because that's 90% of my workload. When I want the VM booted, I unbind the PCI
devices (only gpu and its audio device) and bind it to vfio-pci before letting
qemu hand them off. The only non standard init I do is I pass a patched vbios
in to reinit the card or I get a blank video output.

Once I'm done with the VM I unbind the devices again, bind it to the nvidia
driver and kill X, to restart it on the 1080GTX.

While the VM is running I have vtconsole and framebuffer (with modesetting) on
the iGPU working fine.

Once X server starts on the 1080, I lose my console driver. Relevant portions
from my kernel log include:

  nvidia-modeset: Allocated GPU:0 (GPU-43b5e24d-977e-4bb0-daf3-78b52338da5e) @ \
    PCI:0000:01:00.0
  efifb: probing for efifb
   \xb0\xf04\xebs\xa1\xff\xff\xb0\xf04\xebs\xa1\xff\xff: BAR has moved, \
   updating efifb address
  efifb: cannot reserve video memory at 0x1000000

X server starts fine again and the card is fine, but if I ever have to drop to
vt then I end up in an unresponsive black screen.

Any tips on how I can debug this? Is it because I reinit the GPU with an
untained boot vbios that does not contain the required mappings for efifb?

Thank you
Alex



reply via email to

[Prev in Thread] Current Thread [Next in Thread]