High screen resolution on a KVM virtual machine with QXL (2024)

When you create an new virtual KVM virtual system the video ram is limited to 16MB by default to use a higer screen resolution you needto increase the video ram. The available resolution reported by the virtual screen may also not include the resolution that you want to utilize.

You’ll find my journey to enable higher screen resolutions in my KVM (qemu) virtual systems below.

Ubuntu 16.04

There is an issue with Ubuntu 16.04 and the latest HWE kernel https://wiki.ubuntu.com/Kernel/LTSEnablementStack. Even a full HD resultion (1920 x 1080 ) if you have the latest HWE kernel on your system.

To resolve this issue your can uninstall the latest kernel or install the LTS kernel.

Install the LTS Kernel

staf@ubuntu:~$ sudo apt-get install linux-generic-lts-xenialReading package lists... DoneBuilding dependency tree Reading state information... DoneThe following additional packages will be installed: linux-generic linux-headers-4.4.0-119 linux-headers-4.4.0-119-generic linux-headers-generic linux-image-4.4.0-119-generic linux-image-extra-4.4.0-119-generic linux-image-genericSuggested packages: fdutils linux-doc-4.4.0 | linux-source-4.4.0 linux-toolsThe following NEW packages will be installed: linux-generic linux-generic-lts-xenial linux-headers-4.4.0-119 linux-headers-4.4.0-119-generic linux-headers-generic linux-image-4.4.0-119-generic linux-image-extra-4.4.0-119-generic linux-image-generic0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.Need to get 69,3 MB of archives.After this operation, 301 MB of additional disk space will be used.Do you want to continue? [Y/n] <snip>Setting up linux-image-generic (4.4.0.119.125) ...Setting up linux-headers-4.4.0-119 (4.4.0-119.143) ...Setting up linux-headers-4.4.0-119-generic (4.4.0-119.143) ...Setting up linux-headers-generic (4.4.0.119.125) ...Setting up linux-generic (4.4.0.119.125) ...Setting up linux-generic-lts-xenial (4.4.0.119.125) ...staf@ubuntu:~$ 

Remove the HWE kernel

staf@ubuntu:~$ sudo apt-get purge linux-image-4.13*Reading package lists... DoneBuilding dependency tree Reading state information... Done<snip>doneThe link /vmlinuz.old is a damaged linkRemoving symbolic link vmlinuz.old you may need to re-run your boot loader[grub]The link /initrd.img.old is a damaged linkRemoving symbolic link initrd.img.old you may need to re-run your boot loader[grub]Purging configuration files for linux-image-4.13.0-38-generic (4.13.0-38.43~16.04.1) ...Examining /etc/kernel/postrm.d .run-parts: executing /etc/kernel/postrm.d/initramfs-tools 4.13.0-38-generic /boot/vmlinuz-4.13.0-38-genericrun-parts: executing /etc/kernel/postrm.d/zz-update-grub 4.13.0-38-generic /boot/vmlinuz-4.13.0-38-generic

Cleanup

staf@ubuntu:~$ sudo apt autoremoveReading package lists... DoneBuilding dependency tree Reading state information... DoneThe following packages will be REMOVED: linux-headers-4.13.0-36 linux-headers-4.13.0-36-generic linux-headers-generic-hwe-16.040 upgraded, 0 newly installed, 3 to remove and 0 not upgraded.After this operation, 83,1 MB disk space will be freed.Do you want to continue? [Y/n] (Reading database ... 234149 files and directories currently installed.)Removing linux-headers-4.13.0-36-generic (4.13.0-36.40~16.04.1) ...Removing linux-headers-4.13.0-36 (4.13.0-36.40~16.04.1) ...Removing linux-headers-generic-hwe-16.04 (4.13.0.38.57) ...staf@ubuntu:~$ 

Reboot

After a reboot higher resolutions are possible on ubuntu 16.04

Required video ram

When you create a new KVM virtual machine it has 16MB of video RAM.Below you’ll the calculation for the required video RAM for a 4k resolution ( 3840 x 2160 ).

3840 x 2160 = 8294400
8294400 x 32 = 265420800 <br/ >265420800 / 8 = 33177600
33177600 / (1024*1024) = 31.640625 MB

So 32 MB video ram is enough for a 4k resolution, to take some overhead into account we’ll increase the video ram to 64 MB.

list the domains

[swagemakers@staflaptop ~]$ sudo virshWelcome to virsh, the virtualization interactive terminal.Type: 'help' for help with commands 'quit' to quitvirsh # list --all Id Name State---------------------------------------------------- - centos7.0 shut off - debian shut off - fedora27 shut offvirsh # 

edit the domain settings

virsh # edit --domain debian
update the memory settings
 <video> <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video> <redirdev bus='usb' type='spicevmc'>

to

 <video> <model type='qxl' ram='65536' vram='65536' vgamem='65536' heads='1' primary='yes'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </video>

xrandr

Even with the additional RAM higer resolution aren’t possible (yet), the virtual screen doesn’t report the higer screen resolution. It’s possible to add the higher screen resolution with xrandr.

display current settings
staf@debian:~$ xrandr Screen 0: minimum 320 x 200, current 1920 x 1080, maximum 8192 x 8192Virtual-0 connected primary 1920x1080+0+0 0mm x 0mm 1024x768 59.95 + 1920x1200 59.95 1920x1080 60.00* 1600x1200 59.95 1680x1050 60.00 1400x1050 60.00 1280x1024 59.95 1440x900 59.99 1280x960 59.99 1280x854 59.95 1280x800 59.96 1280x720 59.97 1152x768 59.95 800x600 59.96 848x480 59.94 720x480 59.94 640x480 59.94 Virtual-1 disconnectedVirtual-2 disconnectedVirtual-3 disconnectedstaf@debian:~$ 
get the modeline
staf@debian:~$ cvt 2560 1440 # 2560x1440 59.96 Hz (CVT 3.69M9) hsync: 89.52 kHz; pclk: 312.25 MHzModeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsyncstaf@debian:~$ 
create the new mode line
staf@debian:~$ xrandr --newmode "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsyncstaf@debian:~$ 
add the mode to your screen
staf@debian:~$ xrandr --addmode Virtual-0 2560x1440_60.00staf@debian:~$ 
use the new mode
staf@debian:~$ xrandr --output Virtual-0 --mode 2560x1440_60.00staf@debian:~$ 
4k

To use a 4k resolution you can use the commands

staf@debian:~$ cvt 3840 2160# 3840x2160 59.98 Hz (CVT 8.29M9) hsync: 134.18 kHz; pclk: 712.75 MHzModeline "3840x2160_60.00" 712.75 3840 4160 4576 5312 2160 2163 2168 2237 -hsync +vsyncstaf@mydevolo:~$ xrandr --newmode "3840x2160_60.00" 712.75 3840 4160 4576 5312 2160 2163 2168 2237 -hsync +vsyncstaf@mydevolo:~$ xrandr --addmode Virtual-0 3840x2160_60.00staf@mydevolo:~$ xrandr --output Virtual-0 --mode 3840x2160_60.00staf@mydevolo:~$ 

Add the new screen resolution permanently

Debian & Co

Create a monitor configuration file in /usr/share/X11/xorg.conf.d

root@mydevolo:/usr/share/X11/xorg.conf.d# vi 10-monitor.conf

And add the modeline for your screen resolution. With the Option “PreferredMode” you can set the prferred resolution.

section "Monitor" Identifier "Virtual-0 " Modeline "2560x1440_60.00" 312.25 2560 2752 3024 3488 1440 1443 1448 1493 -hsync +vsync Modeline "3840x2160_60.00" 712.75 3840 4160 4576 5312 2160 2163 2168 2237 -hsync +vsync Option "PreferredMode" "2560x1440_60.00"EndSection

Other GNU/Linux distros

Most other GNU/Linux distribution use /etc/X11/xorg.conf.d/

Have fun!

High screen resolution on a KVM virtual machine with QXL (2024)
Top Articles
Board & Train | SideKick Dog Training Private Dog Training Milwaukee WI
Bresser | BRESSER Profi WLAN-Wetterstation 7in1 mit Lichtintensität- und UV-Messung | Expand Your Horizon
Printable Whoville Houses Clipart
Average Jonas Wife
Pixel Speedrun Unblocked 76
Blorg Body Pillow
El Paso Pet Craigslist
Flixtor The Meg
10 Popular Hair Growth Products Made With Dermatologist-Approved Ingredients to Shop at Amazon
How to Type German letters ä, ö, ü and the ß on your Keyboard
Tlc Africa Deaths 2021
Crime Scene Photos West Memphis Three
Tribune Seymour
Braums Pay Per Hour
180 Best Persuasive Essay Topics Ideas For Students in 2024
Craigslist Farm And Garden Cincinnati Ohio
Christina Khalil Forum
Vermont Craigs List
Canvas Nthurston
Zack Fairhurst Snapchat
Sni 35 Wiring Diagram
Moving Sales Craigslist
Kaitlyn Katsaros Forum
Puss In Boots: The Last Wish Showtimes Near Cinépolis Vista
Teen Vogue Video Series
Brbl Barber Shop
Bill Remini Obituary
Rogue Lineage Uber Titles
پنل کاربری سایت همسریابی هلو
Preggophili
Remnants of Filth: Yuwu (Novel) Vol. 4
Busch Gardens Wait Times
Chadrad Swap Shop
Gabrielle Enright Weight Loss
Despacito Justin Bieber Lyrics
American Bully Xxl Black Panther
10 games with New Game Plus modes so good you simply have to play them twice
Wal-Mart 2516 Directory
Paperless Employee/Kiewit Pay Statements
Linda Sublette Actress
Fapello.clm
Craigslist Pa Altoona
Electronic Music Duo Daft Punk Announces Split After Nearly 3 Decades
Sour OG is a chill recreational strain -- just have healthy snacks nearby (cannabis review)
844 386 9815
Mauston O'reilly's
Tropical Smoothie Address
Zipformsonline Plus Login
3367164101
Best Restaurant In Glendale Az
Overstock Comenity Login
Elizabethtown Mesothelioma Legal Question
Latest Posts
Article information

Author: Melvina Ondricka

Last Updated:

Views: 5866

Rating: 4.8 / 5 (48 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Melvina Ondricka

Birthday: 2000-12-23

Address: Suite 382 139 Shaniqua Locks, Paulaborough, UT 90498

Phone: +636383657021

Job: Dynamic Government Specialist

Hobby: Kite flying, Watching movies, Knitting, Model building, Reading, Wood carving, Paintball

Introduction: My name is Melvina Ondricka, I am a helpful, fancy, friendly, innocent, outstanding, courageous, thoughtful person who loves writing and wants to share my knowledge and understanding with you.