Does dom0 require a GPU?
-
Hi,
My current setup features two GPUs: one (R9 270) used to display the console, and another (T600) for PCI passthrough to a VM. This setup is working fine but I want to reduce power consumption and optimize PCIe lanes.
I want to remove the one used by dom0 and only retain the one I'm using for my VMs. Is this possible to do? My CPU (e5 2680v3) does not have an iGPU.
-
@Johny It would help knowing how the two GPUs were configured on the host. Is this host part of a pool or standalone?
-
@Johny So, you just want a low power VGA card... I did not find may new ones. I do see an ASPEED AST2400 chipset that many use for a PCIe 1x VGA card (non-gpu). It's reported to use about 2-3 watts. It costs about $30USD and ships from China. The issue I see reported with it is firmware issues. Newer systems booting with UEFI may have issues seeing the card and may need a flash update on the video card, which is a known problem.
Option 2 is to just not have a VGA display for dom0.
-
Hey @tjkreidl, this is just a single host.
I have the T600 hidden from dom0 using
/opt/xensource/libexec/xen-cmdline --set-dom0 "xen-pciback.hide=(0000:02:00.0)"The other one (R9 270) is not hidden.
If I remove the R9 270 from the host and leave the T600, even though the T600 is hidden from dom0 it seems to be getting used by dom0.
Is it safe to assume that the PCI device ID for the T600 changes once the R9 270 is removed, which means I need to hide the new ID again?
-
Hey @Andrew, thanks very much for looking that up and providing the suggestions!
Re. option 2: it's possible to just hide the T600 from dom0 and remove the R9 270 from the machine? dom0 won't complain that it's missing a GPU, or take control of the only GPU in the system?
-
@Andrew I thought dom0 had to have some sort of graphics card; is this a recent development? My understanding is that dom0 needed one, albeit not necessarily any with GPU capabilities. Thanks in advance for any clarifications.
-
@tjkreidl You can assign Dom0 to a serial port using console=ttyS1 (in grub.cfg) and then block the VGA/GPU from Dom0 using video=efifb:off xen-pciback.hide=(0000:01:00.1)
-
@Andrew That's exactly what I wanted to know, thanks!
Can you confirm this process is correct:
/opt/xensource/libexec/xen-cmdline --set-dom0 "video=efifb:off xen-pciback.hide=(0000:02:00.0)(0000:02:00.1)"In
grub.cfg, are we replacingconsole=vgawithconsole=ttyS0under themultiboot2line, or do we only need to simply use:/opt/xensource/libexec/xen-cmdline --set-dom0 "console=ttyS0"Do we need to do the same with
--set-xenfor the command above? -
For those who run into this in the future, below is a snippet of my
grub.cfg. The params to note at areconsole,videoandxen-pciback.hide.Note that my
consoleis being redirected tocom1which has a db9 serial adapter hooked up to it.menuentry 'XCP-ng' { search --label --set root root-kdmaps multiboot2 /boot/xen.gz com1=115200,8n1 console=com1 dom0_mem=4304M,max:4304M watchdog ucode=scan dom0_max_vcpus=1-16 crashkernel=256M,below=4G cpufreq=xen:ondemand module2 /boot/vmlinuz-4.19-xen root=LABEL=root-kdmaps ro nolvm hpet=disable console=tty0 quiet vga=785 splash plymouth.ignore-serial-consoles acpi_enforce_resources=lax video=efifb:off xen-pciback.hide=(0000:01:00.0)(0000:01:00.1) module2 /boot/initrd-4.19-xen.img } menuentry 'XCP-ng (Serial)' { search --label --set root root-kdmaps multiboot2 /boot/xen.gz com1=115200,8n1 console=com1,vga dom0_mem=4304M,max:4304M watchdog ucode=scan dom0_max_vcpus=1-16 crashkernel=256M,below=4G cpufreq=xen:ondemand module2 /boot/vmlinuz-4.19-xen root=LABEL=root-kdmaps ro nolvm hpet=disable console=tty0 acpi_enforce_resources=lax video=efifb:off xen-pciback.hide=(0000:01:00.0)(0000:01:00.1) module2 /boot/initrd-4.19-xen.img } -
Does it work as you wanted now? If yes, probably something we can put in our official doc! Ping @thomas-dkmt