--- layout: doc title: Linux HVM Tips permalink: /doc/linux-hvm-tips/ redirect_from: - /en/doc/linux-hvm-tips/ - /doc/LinuxHVMTips/ - /wiki/LinuxHVMTips/ --- Tips for Linux in HVM domain ============================ How to fix bootup kernel error ------------------------------- The HVM may pause on boot, showing a fixed cursor. After a while a series of warnings may be shown similar to this: BUG: soft lockup - CPU#0 stuck for 23s! [systemd-udevd:244] To fix this: 1. Kill the HVM. 1. Start the HVM 1. Press "e" at the grub screen to edit the boot parameters 1. Find the /vmlinuz line, and edit it to replace "rhgb" with "modprobe.blacklist=bochs_drm" 1. Press "Ctrl-x" to start the HVM If this solves the problem then you will want to make the change permanent: 1. Edit the file `/etc/default/grub`. 1. Find the line which starts: ~~~ GRUB_CMDLINE_LINUX= ~~~ 1. Remove this text from that line: ~~~ rhgb ~~~ 1. Add this text to that line: ~~~ modprobe.blacklist=bochs_drm ~~~ 1. Run this command: ~~~ grub2-mkconfig --output=/boot/grub2/grub.cfg ~~~ The HVM should now start normally. Screen resolution ----------------- Some kernel/Xorg combinations use only 640x480 in HVM, which is quite small. To enable maximum resolution, some changes in the Xorg configuration are needed: 1. Force "vesa" video driver 2. Provide wide horizontal synchronization range To achieve it (all commands to be run as root): 1. Generate XOrg configuration (if you don't have it): ~~~ X -configure :1 && mv ~/xorg.conf.new /etc/X11/xorg.conf ~~~ 1. Add HorizSync line to Monitor section, it should look something like: ~~~ Section "Monitor" Identifier "Monitor0" VendorName "Monitor Vendor" ModelName "Monitor Model" HorizSync 30.0 - 60.0 EndSection ~~~ 1. Change driver to "vesa" in Device section: ~~~ Section "Device" # (...) Identifier "Card0" Driver "vesa" VendorName "Technical Corp." BoardName "Unknown Board" BusID "PCI:0:2:0" EndSection ~~~ Now you should get resolution of at least 1280x1024 and should be able to choose other modes. Qubes agents ------------ Linux Qubes agents are written primarily for PV qubes, but it is possible to run them also in a HVM qube. However some work may be required to achieve this. Check [this thread](https://groups.google.com/group/qubes-devel/browse_thread/thread/081df4a43e49e7a5).