You are not logged in.
I decided to try make things work but this is just not going to work.
I have created a new VM , and so far :
QXL and bosch_drm are both loaded:
# lsmod | grep qxl
qxl 81920 2
ttm 114688 2 qxl,bochs_drm
drm_kms_helper 208896 2 qxl,bochs_drm
drm 499712 6 drm_kms_helper,qxl,bochs_drm,ttm
The VGA driver in use is QXL:
00:01.0 0300: 1b36:0100 (rev 04) (prog-if 00 [VGA controller])
Subsystem: 1af4:1100
Flags: fast devsel, IRQ 21
Memory at f4000000 (32-bit, non-prefetchable) [size=64M]
Memory at f8000000 (32-bit, non-prefetchable) [size=64M]
Memory at fce14000 (32-bit, non-prefetchable) [size=8K]
I/O ports at c040 [size=32]
Expansion ROM at 000c0000 [disabled] [size=128K]
Kernel driver in use: qxl
Kernel modules: qxl
And vdagent is up and running:
systemctl status spice-vdagentd
* spice-vdagentd.service - Agent daemon for Spice guests
Loaded: loaded (/usr/lib/systemd/system/spice-vdagentd.service; indirect; vendor preset: disabled)
Active: active (running) since Thu 2019-04-25 01:24:26 CEST; 14min ago
Process: 732 ExecStart=/usr/bin/spice-vdagentd $SPICE_VDAGENTD_EXTRA_ARGS (code=exited, status=0/SUCCESS)
Main PID: 736 (spice-vdagentd)
Tasks: 1 (limit: 4622)
Memory: 636.0K
CGroup: /system.slice/spice-vdagentd.service
`-736 /usr/bin/spice-vdagentd
And com.redhat.spice.0 / spicevmc is added as a channel...
I would exclude any memory issues as well because 16MB (the same amount given to windows) works just fine on a FullHD display.
Could someone explain why the resolution is crappy? If I start a normal DE it would switch to "rendering" mode and the "bigger" display that offers is a 1280x768.
The "thing" that makes me "grrrrr" (yeah.. nice topic btw) is that on a Windows 10 virtual machine it works just fine. The display fits perfectly and automatically.
How's it possible!?
Last edited by r0b0t (2019-04-26 18:20:18)
Offline
Please post xorg log, xrandr -q and glxinfo -B output from the guest.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
Please post xorg log, xrandr -q and glxinfo -B output from the guest.
Thanks, it turns out I had some weird configurations on /etc/X11/xorg.conf.d , after I removed those everything works like a charm, screen resize & copy/pate.
I'll mark the thread as resolved.
Offline
And there's a problem again, not like the first one, but didn't want to open a new thread.
PS: this is another system, installed yesterday.
So, now the resize works fine on this one (no weird configuration I promise, this is bare bone arch), however whenever the screen is in the "resize" mode, it switches to 0,5Mhz.
If I set the screen size manually to one detected by the driver it works fine and it shows 60Mhz.
Below when Auto Resize VM with window is set / checked:
% xrandr
Screen 0: minimum 320 x 200, current 1920 x 945, maximum 8192 x 8192
qxl-0 connected primary 1920x945+0+0 0mm x 0mm
1024x768 60.00 +
3840x2160 60.00
3200x2400 60.00
2800x2100 60.00
2560x2048 60.00
2048x2048 60.00
2560x1600 60.00
2000x2000 60.00
2560x1440 60.00
2048x1536 60.00
1920x1440 60.00
1920x1200 60.00
1920x1080 60.00
1600x1200 60.00
1680x1050 60.00
1400x1050 60.00
1600x900 60.00
1280x1024 60.00
1440x900 60.00
1280x960 60.00
1366x768 60.00
1360x768 60.00
1280x800 60.00
1152x870 60.00
1152x864 60.00
1280x768 60.00
1280x760 60.00
1280x720 60.00
1024x600 60.00
960x640 60.00
832x624 60.00
800x600 60.00
800x480 60.00
640x480 60.00
1920x945-0 0.06*
As you can see the last one 1920x945-0 0.06* is in 0.06 Mhz , so basically no refresh rate...
% glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: VMware, Inc. (0xffffffff)
Device: llvmpipe (LLVM 8.0, 256 bits) (0xffffffff)
Version: 19.0.2
Accelerated: no
Video memory: 3943MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 3.3
Max compat profile version: 3.1
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 8.0, 256 bits)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 19.0.2
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 3.1 Mesa 19.0.2
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 19.0.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Here I switch manually to 1600x900, it's 60.0
% xrandr
Screen 0: minimum 320 x 200, current 1600 x 900, maximum 8192 x 8192
qxl-0 connected primary 1600x900+0+0 0mm x 0mm
1024x768 60.00 +
3840x2160 60.00
3200x2400 60.00
2800x2100 60.00
2560x2048 60.00
2048x2048 60.00
2560x1600 60.00
2000x2000 60.00
2560x1440 60.00
2048x1536 60.00
1920x1440 60.00
1920x1200 60.00
1920x1080 60.00
1600x1200 60.00
1680x1050 60.00
1400x1050 60.00
1600x900 60.00*
1280x1024 60.00
1440x900 60.00
1280x960 60.00
1366x768 60.00
1360x768 60.00
1280x800 60.00
1152x870 60.00
1152x864 60.00
1280x768 60.00
1280x760 60.00
1280x720 60.00
1024x600 60.00
960x640 60.00
832x624 60.00
800x600 60.00
800x480 60.00
640x480 60.00
1920x945-0 0.06
and
glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: VMware, Inc. (0xffffffff)
Device: llvmpipe (LLVM 8.0, 256 bits) (0xffffffff)
Version: 19.0.2
Accelerated: no
Video memory: 3943MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 3.3
Max compat profile version: 3.1
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 8.0, 256 bits)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 19.0.2
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 3.1 Mesa 19.0.2
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 19.0.2
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
I see this at this moment (with 60.0MHz):
[ 776.442] - 0th attempt
[ 776.442] - OOM at 642 74 32 (= 190032 bytes)
[ 776.442] Cache contents: null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null 974 953 917 916 979 831 1004 914 973 960 957 909 924 807 798 833 920 861 958 total: 19
[ 776.453] - 1th attempt
[ 776.453] - OOM at 642 74 32 (= 190032 bytes)
[ 776.453] Cache contents: null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null 974 953 917 916 979 831 1004 914 973 960 957 909 924 807 798 833 920 861 958 total: 19
[ 776.463] - 2th attempt
[ 776.463] - OOM at 642 74 32 (= 190032 bytes)
[ 776.463] Cache contents: null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null 974 953 917 916 979 831 1004 914 973 960 957 909 924 807 798 833 920 861 958 total: 19
[ 776.474] Out of video memory: Could not allocate 192600 bytes
Now, I'm removing xorg logs and will reboot. Setting the window to autoresize VM.
This is the log generated by the startup and login into cinnamon (tried with xfce4 as well same results).
This is the part when the switch happens
[ 26.543] (II) Using input driver 'libinput' for 'spice vdagent tablet'
[ 26.543] (**) spice vdagent tablet: always reports core events
[ 26.543] (**) Option "Device" "/dev/input/event5"
[ 26.543] (**) Option "_source" "server/udev"
[ 26.543] (EE) client bug: Invalid path /dev/input/event5
[ 26.543] (EE) libinput: spice vdagent tablet: Failed to create a device for /dev/input/event5
[ 26.543] (EE) PreInit returned 2 for "spice vdagent tablet"
[ 26.543] (II) UnloadModule: "libinput"
[ 26.595] (II) config/udev: Adding input device spice vdagent tablet (/dev/input/mouse2)
[ 26.595] (II) No input driver specified, ignoring this device.
[ 26.595] (II) This device may have been added with another device file.
[ 26.595] (II) config/udev: Adding input device spice vdagent tablet (/dev/input/js1)
[ 26.595] (II) No input driver specified, ignoring this device.
[ 26.595] (II) This device may have been added with another device file.
[ 26.595] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1920x945
[ 26.595] resizing primary to 1920x945
[ 26.596] primary is 0x55c102c76e20
[ 26.616] (II) config/udev: Adding input device spice vdagent tablet (/dev/input/event5)
[ 26.616] (**) spice vdagent tablet: Applying InputClass "libinput pointer catchall"
[ 26.616] (II) Using input driver 'libinput' for 'spice vdagent tablet'
[ 26.616] (**) spice vdagent tablet: always reports core events
[ 26.616] (**) Option "Device" "/dev/input/event5"
[ 26.616] (**) Option "_source" "server/udev"
[ 26.616] (EE) client bug: Invalid path /dev/input/event5
[ 26.616] (EE) libinput: spice vdagent tablet: Failed to create a device for /dev/input/event5
[ 26.616] (EE) PreInit returned 2 for "spice vdagent tablet"
Now, this weird out of memory stuff happens if I set the display manually to some 60.0Mhz refresh rate (although it works):
https://paste.ofcode.org/324848xYYMaekByWy2AkfSq
A summary of possible meaningful logs:
cat /var/log/Xorg.0.log | egrep -i 'ww|ee|error|failed|resize'
[ 11.557] Current Operating System: Linux nailer 5.0.8-arch1-1-ARCH #1 SMP PREEMPT Wed Apr 17 14:56:15 UTC 2019 x86_64
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 11.558] (==) No Layout section. Using the first Screen section.
[ 11.558] (==) No screen section available. Using defaults.
[ 11.558] (**) |-->Screen "Default Screen Section" (0)
[ 11.558] (==) No monitor specified for screen "Default Screen Section".
[ 11.561] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[ 11.561] (II) xfree86: Adding drm device (/dev/dri/card0)
[ 11.563] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[ 11.569] (WW) Falling back to old probe method for modesetting
[ 11.569] (WW) Falling back to old probe method for fbdev
[ 11.570] (II) qxl(0): Creating default Display subsection in Screen section
"Default Screen Section" for depth/fbbpp 24/32
[ 11.570] (II) qxl(0): Offscreen Surfaces: Enabled
[ 11.760] (II) Initializing extension MIT-SCREEN-SAVER
[ 11.760] (II) AIGLX: Screen 0 is not DRI2 capable
[ 11.854] (II) GLX: Initialized DRISWRAST GL provider for screen 0
[ 11.854] (II) Initializing extension XFree86-VidModeExtension
[ 11.854] (II) Initializing extension XFree86-DGA
[ 11.854] (II) Initializing extension XFree86-DRI
[ 11.854] (II) qxl(0): Setting screen physical size to 270 x 203
[ 11.854] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1024x768
[ 12.112] (II) This device may have been added with another device file.
[ 12.114] (II) This device may have been added with another device file.
[ 12.148] (II) This device may have been added with another device file.
[ 12.409] (II) This device may have been added with another device file.
[ 25.933] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1600x900
[ 26.542] (II) This device may have been added with another device file.
[ 26.542] (II) This device may have been added with another device file.
[ 26.543] (EE) client bug: Invalid path /dev/input/event5
[ 26.543] (EE) libinput: spice vdagent tablet: Failed to create a device for /dev/input/event5
[ 26.543] (EE) PreInit returned 2 for "spice vdagent tablet"
[ 26.595] (II) This device may have been added with another device file.
[ 26.595] (II) This device may have been added with another device file.
[ 26.595] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1920x945
[ 26.616] (EE) client bug: Invalid path /dev/input/event5
[ 26.616] (EE) libinput: spice vdagent tablet: Failed to create a device for /dev/input/event5
[ 26.616] (EE) PreInit returned 2 for "spice vdagent tablet"
[ 26.648] (II) This device may have been added with another device file.
[ 26.648] (II) This device may have been added with another device file.
[ 702.558] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1600x900
[ 702.668] (II) This device may have been added with another device file.
[ 702.669] (II) This device may have been added with another device file.
[ 703.502] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1920x945
[ 703.611] (II) This device may have been added with another device file.
[ 703.612] (II) This device may have been added with another device file.
[ 708.154] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1920x945
[ 751.146] (II) qxl(0): qxl_xf86crtc_resize: Placeholder resize 1600x900
[ 751.328] (II) This device may have been added with another device file.
[ 751.328] (II) This device may have been added with another device file.
Offline
You do have xf86-video-qxl installed, right ?
The out of memory messages look like they come from the kernel OOM killer and relate to guest video memory .
Look at https://wiki.archlinux.org/index.php/QE … or_support and try
- decreasing qxl.heads
- increase vgamem_mb
- increase vram_size_mb if qxl.heads * vgamem_mb > vram_size_mb
No clue which numbers will work, but halving qxl.heads and doubling vgamem_mb seems worth a shot,
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
Yes of course it's installed.
I'v tried so far to copy and modify the command of virt-manager (I go for easy and get it done) but no joy in running it:
sudo /usr/bin/qemu-system-x86_64 -name guest=archlinux \
-machine pc-q35-3.1,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu Skylake-Client-IBRS,ss=on,vmx=on,hypervisor=on,tsc_adjust=on,clflushopt=on,umip=on,stibp=on,ssbd=on,xsaves=on,pdpe1gb=on -m 4096 \
-realtime mlock=off -smp 4,sockets=4,cores=1,threads=1 -uuid 7528c109-0210-45b5-9015-c34e711a439b \
-no-user-config -nodefaults \
-rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay \
-no-hpet -no-shutdown \
-global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1 -boot strict=on \
-device pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x2 \
-device pcie-root-port,port=0x11,chassis=2,id=pci.2,bus=pcie.0,addr=0x2.0x1 \
-device pcie-root-port,port=0x12,chassis=3,id=pci.3,bus=pcie.0,addr=0x2.0x2 \
-device pcie-root-port,port=0x13,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x3 \
-device pcie-root-port,port=0x14,chassis=5,id=pci.5,bus=pcie.0,addr=0x2.0x4 \
-device pcie-root-port,port=0x15,chassis=6,id=pci.6,bus=pcie.0,addr=0x2.0x5 \
-device pcie-root-port,port=0x16,chassis=7,id=pci.7,bus=pcie.0,addr=0x2.0x6 \
-device qemu-xhci,p2=15,p3=15,id=usb,bus=pci.2,addr=0x0 \
-device virtio-serial-pci,id=virtio-serial0,bus=pci.3,addr=0x0 \
-drive file=/home/user5/devel/VIRTUAL/virtualstorage/archlinux.qcow2,format=qcow2,if=none,id=drive-virtio-disk0 \
-device virtio-blk-pci,scsi=off,bus=pci.4,addr=0x0,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 \
-drive if=none,id=drive-sata0-0-0,readonly=on -device ide-cd,bus=ide.0,drive=drive-sata0-0-0,id=sata0-0-0 \
-netdev tap,fd=28,id=hostnet0,vhost=on,vhostfd=29 \
-device virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:ea:e1:c7,bus=pci.1,addr=0x0 \
-chardev spicevmc,id=charchannel1,name=vdagent \
-device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=com.redhat.spice.0 \
-device usb-tablet,id=input0,bus=usb.0,port=1 \
-spice port=5900,addr=127.0.0.1,disable-ticketing,image-compression=off,seamless-migration=on \
-device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=64,max_outputs=1,bus=pcie.0,addr=0x1 \
-device ich9-intel-hda,id=sound0,bus=pcie.0,addr=0x1b \
-device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 \
-chardev spicevmc,id=charredir0,name=usbredir \
-device usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=2 \
-chardev spicevmc,id=charredir1,name=usbredir \
-device usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=3 \
-device virtio-balloon-pci,id=balloon0,bus=pci.5,addr=0x0 \
-object rng-random,id=objrng0,filename=/dev/urandom \
-device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.6,addr=0x0
it gives me always this :
sudo ./archlinux-qemu.sh
qemu-system-x86_64: /build/qemu/src/qemu-4.0.0/util/oslib-posix.c:245: qemu_set_nonblock: Assertion `f != -1' failed.
And I did remove allot of stuff that it was complaining about..
Offline
You shouldn't need to run qemu with sudo , but as normal user.
please run as normal user and post the output.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
It's the same error with the user as well, this time I'm including the coredump log.
Apr 27 16:16:15 arch-station audit[6505]: ANOM_ABEND auid=1000 uid=1000 gid=985 ses=1 pid=6505 comm="qemu-system-x86" exe="/usr/bin/qemu-system-x86_64" sig=6 res=1
Apr 27 16:16:15 arch-station systemd[1]: Created slice system-systemd\x2dcoredump.slice.
Apr 27 16:16:15 arch-station systemd[1]: Started Process Core Dump (PID 6509/UID 0).
Apr 27 16:16:15 arch-station audit[1]: SERVICE_START pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@0-6509-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
Apr 27 16:16:16 arch-station systemd-coredump[6510]: Process 6505 (qemu-system-x86) of user 1000 dumped core.
Stack trace of thread 6505:
#0 0x00007fb6c3aaf82f raise (libc.so.6)
#1 0x00007fb6c3a9a672 abort (libc.so.6)
#2 0x00007fb6c3a9a548 __assert_fail_base.cold.0 (libc.so.6)
#3 0x00007fb6c3aa7db6 __assert_fail (libc.so.6)
#4 0x00005601b7c0ea60 qemu_set_nonblock (qemu-system-x86_64)
#5 0x00005601b7ad8192 net_init_tap (qemu-system-x86_64)
#6 0x00005601b7ac6bb8 n/a (qemu-system-x86_64)
#7 0x00005601b7c1e433 qemu_opts_foreach (qemu-system-x86_64)
#8 0x00005601b7ac93f5 net_init_clients (qemu-system-x86_64)
#9 0x00005601b77b3201 main (qemu-system-x86_64)
#10 0x00007fb6c3a9bce3 __libc_start_main (libc.so.6)
#11 0x00005601b77b6f5e _start (qemu-system-x86_64)
Stack trace of thread 6507:
#0 0x00007fb6c3c4f732 do_futex_wait (libpthread.so.0)
#1 0x00007fb6c3c4f843 __new_sem_wait_slow (libpthread.so.0)
#2 0x00005601b7c101c1 qemu_sem_timedwait (qemu-system-x86_64)
#3 0x00005601b7c0a577 n/a (qemu-system-x86_64)
#4 0x00005601b7c0f7e0 n/a (qemu-system-x86_64)
#5 0x00007fb6c3c46a92 start_thread (libpthread.so.0)
#6 0x00007fb6c3b72cd3 __clone (libc.so.6)
Stack trace of thread 6506:
#0 0x00007fb6c3b6d97d syscall (libc.so.6)
#1 0x00005601b7c1040c qemu_event_wait (qemu-system-x86_64)
#2 0x00005601b7c21a49 n/a (qemu-system-x86_64)
#3 0x00005601b7c0f7e0 n/a (qemu-system-x86_64)
#4 0x00007fb6c3c46a92 start_thread (libpthread.so.0)
#5 0x00007fb6c3b72cd3 __clone (libc.so.6)
Apr 27 16:16:16 arch-station systemd[1]: systemd-coredump@0-6509-0.service: Succeeded.
(I run it with sudo before since the images are owned by root)
Last edited by r0b0t (2019-04-27 14:20:56)
Offline
This is getting above my skill level, and Applications & Desktop Environments may be the wrong board for this issue.
I suggest you ask mods to move this thread to kernel and hardware forum.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
(A works at time B) && (time C > time B ) ≠ (A works at time C)
Offline
I think I'll leave it at this... (I don't have other options, this is most probably code related, a bug or lack of something) I'll just set it to fullHD and switch between full screen, at least it works well that way...
Out of curiosity, do any of you guys have a Linux virtual system on KVM/qemu where spice / vdagent screen autoresolution works?
Even with a laptop (again fullhd screen) I never recall having it ever working, except on windows... Which is ironic, having a linux software work on windows while the same feature doesn't work on Linux.
Last edited by r0b0t (2019-04-27 16:34:41)
Offline
Just a quick update...
I was able to get rid of the OOM-killer problems by increasing the GPU memory to 256MB, in order to do so you shouldn't add vgamem_mb since it's not recognized in the xml configuration (virsh won't let you add it).
Instead I used
virsh edit archlinux
<model type='qxl' ram='262144' vram='262144' vgamem='262144' heads='1' primary='yes'/>
As for the numbers you are probably looking for one of these power of 2 values:
2n16 = 65,536
2n17 = 131,072
2n18 = 262,144 * will be recognized as 256MB
2n19 = 524,288
2n20 = 1,048,576
yet again this didn't solve the rendering problem and the autoresize will basically loose the framerate.
Offline