Since switching to Looking Glass (from just changing monitor inputs) a few weeks ago, things have been working quite well… with one major exception: I am getting the weirdest screen tearing. Instead of the usual “top half, old frame; bottom half, new frame” type tearing which vsync fixes, I’m getting steep diagonal lines and a checkerboard of parts of the old frame and the new.
I had the damnedest time getting a screenshot of it, but it happens both when playing games and when on the (guest) desktop, so I threw together an animated SVG which just moved black bars around and (after a surprising number of attempts), finally snapped a (host) screenshot of a decent-sized patch of checkerboarding:
This is a relatively tame example of it; it’s a lot more common (and covers a larger area) in 3D games. Never seen anything like it.
I’ve tried twiddling various LG settings which sounded like they could be related, but haven’t had any luck fixing it. I haven’t been able to find any mention of this kind of graphical artifact here in the forum or anywhere else on the internet. If anyone has any advice for me — even just how to do further troubleshooting myself — I’d be grateful.
Various specs, configs, and logs below. If I’ve missed anything which would be helpful, just let me know and I’ll see what I can dig up.
Basic overview and software versions
The hardware is an Intel Core i7-10700K with 64 GiB of RAM. I have a GeForce RTX 3070 (plugged into the only true x16 slot on the motherboard) which is passed into the KVM guest and a Radeon RX 560 for the host. In lieu of a dummy plug (which prevents the mobo from using the Radeon as the boot VGA), I have a tiny two-port HDMI switch which has input 1 empty (for booting) and the GeForce plugged into port 2 (for gaming). Storage is on a couple of Samsung 980 PRO SSDs.
The host software is Arch Linux, Wayland-flavored KDE Plasma, and libvirt to manage the QEMU guest. The guest software is Windows 11 with the usual virtio drivers and agents, plus Steam.
- Host: Arch Linux, currently using Linux kernel 6.13.4-arch1-1
- Looking Glass client B7-rc1 (compiled locally from the official sources, plus a couple of small patches to keep the kernel module compiling on Linux 6.10 and again on 6.13; see below)
- libvirt 11.0.0 (libvirt 1:11.0.0-2 from the Arch official repos)
- QEMU 9.2.0 (qemu-desktop 9.2.0-2 from the Arch official repos)
- Guest: Windows 11 24H2 (build 26100.3194)
- GeForce Game Ready Driver 566.36
- Looking Glass host B7-rc1 (downloaded from the official website)
- SPICE Guest Tools 0.141
- Virtio-win-driver-installer 0.1.262
- Virtio-win-guest-tools 0.1.262
The LG host is using DX12 for capture.
Domain XML from `virsh dumpxml`
<domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
<name>virtual-cyclone</name>
<uuid>29fcb125-8868-40e8-8b74-904f5e69c698</uuid>
<title>Virtual Cyclone</title>
<description>A gaming VM running Windows 11.</description>
<metadata>
<libosinfo xmlns="http://libosinfo.org/xmlns/libvirt/domain/1.0">
<os id="http://microsoft.com/win/11"/>
</libosinfo>
</metadata>
<maxMemory unit='KiB'>33554432</maxMemory>
<memory unit='KiB'>33554432</memory>
<currentMemory unit='KiB'>33554432</currentMemory>
<memoryBacking>
<hugepages>
<page size='2048' unit='KiB'/>
</hugepages>
<source type='memfd'/>
<access mode='shared'/>
</memoryBacking>
<vcpu placement='static'>8</vcpu>
<cputune>
<vcpupin vcpu='0' cpuset='4'/>
<vcpupin vcpu='1' cpuset='12'/>
<vcpupin vcpu='2' cpuset='5'/>
<vcpupin vcpu='3' cpuset='13'/>
<vcpupin vcpu='4' cpuset='6'/>
<vcpupin vcpu='5' cpuset='14'/>
<vcpupin vcpu='6' cpuset='7'/>
<vcpupin vcpu='7' cpuset='15'/>
<emulatorpin cpuset='2-3,10-11'/>
</cputune>
<sysinfo type='smbios'>
<bios>
<entry name='vendor'>TianoCore</entry>
<entry name='version'>EDK II OVMF stable202311</entry>
<entry name='date'>11/24/2023</entry>
<entry name='release'>23.11</entry>
</bios>
<system>
<entry name='manufacturer'>535</entry>
<entry name='product'>Virtual Cyclone</entry>
<entry name='version'>N/A</entry>
<entry name='serial'>virtual-cyclone</entry>
<entry name='uuid'>29fcb125-8868-40e8-8b74-904f5e69c698</entry>
<entry name='sku'>virtual-cyclone</entry>
<entry name='family'>virtual-cyclone</entry>
</system>
<baseBoard>
<entry name='manufacturer'>535</entry>
<entry name='product'>Virtual Cyclone</entry>
<entry name='version'>N/A</entry>
<entry name='serial'>virtual-cyclone</entry>
<entry name='asset'>virtual-cyclone</entry>
</baseBoard>
<chassis>
<entry name='manufacturer'>535</entry>
<entry name='version'>N/A</entry>
<entry name='serial'>virtual-cyclone</entry>
<entry name='asset'>virtual-cyclone</entry>
<entry name='sku'>virtual-cyclone</entry>
</chassis>
</sysinfo>
<os firmware='efi'>
<type arch='x86_64' machine='pc-q35-9.1'>hvm</type>
<firmware>
<feature enabled='no' name='enrolled-keys'/>
<feature enabled='yes' name='secure-boot'/>
</firmware>
<loader readonly='yes' secure='yes' type='pflash' format='raw'>/usr/share/edk2/x64/OVMF_CODE.secboot.4m.fd</loader>
<nvram template='/usr/share/edk2/x64/OVMF_VARS.4m.fd' templateFormat='raw' format='raw'>/var/lib/libvirt/qemu/nvram/virtual-cyclone_VARS.fd</nvram>
<boot dev='cdrom'/>
<boot dev='hd'/>
<smbios mode='sysinfo'/>
</os>
<features>
<acpi/>
<apic/>
<hyperv mode='custom'>
<relaxed state='on'/>
<vapic state='on'/>
<spinlocks state='on' retries='8191'/>
<vpindex state='on'/>
<synic state='on'/>
<stimer state='on'/>
<reset state='on'/>
<vendor_id state='on' value='CycloneGames'/>
<frequencies state='on'/>
<xmm_input state='on'/>
</hyperv>
<kvm>
<hidden state='on'/>
</kvm>
<vmport state='off'/>
<smm state='on'/>
</features>
<cpu mode='host-passthrough' check='none' migratable='off'>
<topology sockets='1' dies='1' clusters='1' cores='4' threads='2'/>
<numa>
<cell id='0' cpus='0-7' memory='33554432' unit='KiB'/>
</numa>
</cpu>
<clock offset='localtime'>
<timer name='rtc' present='yes' tickpolicy='catchup'/>
<timer name='pit' present='yes' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
<timer name='kvmclock' present='yes'/>
<timer name='hypervclock' present='yes'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>coredump-destroy</on_crash>
<on_lockfailure>pause</on_lockfailure>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='yes'/>
</pm>
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type='file' device='disk' model='virtio-non-transitional'>
<driver name='qemu' type='qcow2' cache='none' io='native'/>
<source file='/home/five35/.local/libvirt/images/virtual-cyclone.qcow2'/>
<target dev='vda' bus='virtio'/>
<alias name='ua-ssd'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</disk>
<disk type='file' device='cdrom'>
<driver name='qemu' type='raw'/>
<target dev='sda' bus='sata'/>
<readonly/>
<alias name='ua-cdrom1'/>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
</disk>
<disk type='file' device='cdrom'>
<driver name='qemu' type='raw'/>
<target dev='sdb' bus='sata'/>
<readonly/>
<alias name='ua-cdrom2'/>
<address type='drive' controller='0' bus='0' target='0' unit='1'/>
</disk>
<controller type='usb' index='0' model='qemu-xhci'>
<address type='pci' domain='0x0000' bus='0x03' slot='0x00' function='0x0'/>
</controller>
<controller type='sata' index='0'>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1f' function='0x2'/>
</controller>
<controller type='pci' index='0' model='pcie-root'/>
<controller type='pci' index='1' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='1' port='0x10'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0' multifunction='on'/>
</controller>
<controller type='pci' index='2' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='2' port='0x11'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x1'/>
</controller>
<controller type='pci' index='3' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='3' port='0x12'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x2'/>
</controller>
<controller type='pci' index='4' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='4' port='0x13'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x3'/>
</controller>
<controller type='pci' index='5' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='5' port='0x14'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x4'/>
</controller>
<controller type='pci' index='6' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='6' port='0x15'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x5'/>
</controller>
<controller type='pci' index='7' model='pcie-root-port'>
<model name='pcie-root-port'/>
<target chassis='7' port='0x16'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x6'/>
</controller>
<controller type='virtio-serial' index='0'>
<address type='pci' domain='0x0000' bus='0x05' slot='0x00' function='0x0'/>
</controller>
<interface type='bridge'>
<mac address='52:54:00:95:f0:04'/>
<source bridge='br0'/>
<model type='virtio-non-transitional'/>
<alias name='ua-nic'/>
<address type='pci' domain='0x0000' bus='0x02' slot='0x00' function='0x0'/>
</interface>
<channel type='unix'>
<target type='virtio' name='org.qemu.guest_agent.0'/>
<address type='virtio-serial' controller='0' bus='0' port='2'/>
</channel>
<channel type='spicevmc'>
<target type='virtio' name='com.redhat.spice.0'/>
<address type='virtio-serial' controller='0' bus='0' port='1'/>
</channel>
<input type='mouse' bus='virtio'>
<address type='pci' domain='0x0000' bus='0x06' slot='0x00' function='0x0'/>
</input>
<input type='keyboard' bus='virtio'>
<address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</input>
<input type='mouse' bus='ps2'/>
<input type='keyboard' bus='ps2'/>
<tpm model='tpm-tis'>
<backend type='emulator' version='2.0' persistent_state='yes'/>
</tpm>
<graphics type='spice' autoport='yes'>
<listen type='address'/>
<image compression='off'/>
<gl enable='no'/>
</graphics>
<sound model='ich9'>
<audio id='1'/>
<alias name='ua-sound'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x1b' function='0x0'/>
</sound>
<audio id='1' type='pipewire' runtimeDir='/run/user/1000'>
<input name='qemuinput'/>
<output name='qemuoutput'/>
</audio>
<video>
<model type='none'/>
</video>
<hostdev mode='subsystem' type='usb' managed='yes'>
<source startupPolicy='optional'>
<vendor id='0x2357'/>
<product id='0x0604'/>
</source>
<alias name='ua-bluetooth'/>
<address type='usb' bus='0' port='1'/>
</hostdev>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</source>
<alias name='ua-gpu'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0' multifunction='on'/>
</hostdev>
<hostdev mode='subsystem' type='pci' managed='yes'>
<source>
<address domain='0x0000' bus='0x01' slot='0x00' function='0x1'/>
</source>
<alias name='ua-gpu-audio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</hostdev>
<watchdog model='itco' action='reset'/>
<memballoon model='none'/>
</devices>
<qemu:commandline>
<qemu:arg value='-device'/>
<qemu:arg value='{"driver":"ivshmem-plain","id":"shmem0","memdev":"looking-glass"}'/>
<qemu:arg value='-object'/>
<qemu:arg value='{"qom-type":"memory-backend-file","id":"looking-glass","mem-path":"/dev/kvmfr0","size":134217728,"share":true}'>
</qemu:commandline>
</domain>
LG client config and build patches
~/.config/looking-glass/client.ini
:
[app]
shmFile=/dev/kvmfr0
[egl]
doubleBuffer=yes
vsync=yes
[spice]
audio=no
scaleCursor=no
[win]
allowResize=no
dontUpscale=yes
quickSplash=yes
uiFont=Noto Sans
uiSize=20
dkms-6.10-build-fix.patch
:
From 7305ce36af211220419eeab302ff28793d515df2 Mon Sep 17 00:00:00 2001
From: Geoffrey McRae <[email protected]>
Date: Fri, 7 Jun 2024 19:01:38 +1000
Subject: [PATCH] [module] fix build on linux 6.10
Fixes #1124 - Thanks @pongo1231
---
module/dkms.conf | 2 +-
module/kvmfr.c | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/module/dkms.conf b/module/dkms.conf
index 9d2a02c0e..486a61edc 100644
--- a/module/dkms.conf
+++ b/module/dkms.conf
@@ -1,5 +1,5 @@
PACKAGE_NAME="kvmfr"
-PACKAGE_VERSION="0.0.9"
+PACKAGE_VERSION="0.0.10"
BUILT_MODULE_NAME[0]="${PACKAGE_NAME}"
MAKE[0]="make KDIR=${kernel_source_dir}"
CLEAN="make KDIR=${kernel_source_dir} clean"
diff --git a/module/kvmfr.c b/module/kvmfr.c
index b5acd18de..c99a5d79c 100644
--- a/module/kvmfr.c
+++ b/module/kvmfr.c
@@ -30,6 +30,7 @@
#include <linux/highmem.h>
#include <linux/memremap.h>
#include <linux/version.h>
+#include <linux/vmalloc.h>
#include <asm/io.h>
kernel-6.13-build-fix.diff
:
diff --git a/module/dkms.conf b/module/dkms.conf
index 9d2a02c..332123e 100644
--- a/module/dkms.conf
+++ b/module/dkms.conf
@@ -1,5 +1,5 @@
PACKAGE_NAME="kvmfr"
-PACKAGE_VERSION="0.0.10"
+PACKAGE_VERSION="0.0.11"
BUILT_MODULE_NAME[0]="${PACKAGE_NAME}"
MAKE[0]="make KDIR=${kernel_source_dir}"
CLEAN="make KDIR=${kernel_source_dir} clean"
diff --git a/module/kvmfr.c b/module/kvmfr.c
index b5acd18..8b5c73d 100644
--- a/module/kvmfr.c
+++ b/module/kvmfr.c
@@ -650,6 +650,8 @@ MODULE_LICENSE("GPL v2");
MODULE_AUTHOR("Geoffrey McRae <[email protected]>");
MODULE_AUTHOR("Guanzhong Chen <[email protected]>");
MODULE_VERSION("0.0.9");
-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,16,0)
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,13,0)
+MODULE_IMPORT_NS("DMA_BUF");
+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5,16,0)
MODULE_IMPORT_NS(DMA_BUF);
#endif
LG client log
Nothing jumps out at me as suspicious, but I don’t know how to enable debug logging.
00:00:00.000 [I] main.c:1859 | main | Looking Glass (B7-rc1)
00:00:00.000 [I] main.c:1860 | main | Locking Method: Atomic
00:00:00.000 [I] cpuinfo.c:38 | cpuInfo_log | CPU Model: Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz
00:00:00.000 [I] cpuinfo.c:39 | cpuInfo_log | CPU: 1 sockets, 8 cores, 16 threads
00:00:00.020 [I] config.c:608 | config_load | Loading config from: /home/five35/.config/looking-glass/client.ini
00:00:00.040 [I] main.c:1185 | lg_run | Using font: /usr/share/fonts/noto/NotoSans-Regular.ttf
00:00:00.040 [I] ivshmem.c:128 | ivshmemOpenDev | KVMFR Device : /dev/kvmfr0
00:00:00.042 [I] ps.c:245 | purespice_connect | Connecting to socket 127.0.0.1:5900
00:00:00.051 [I] rsa.c:178 | rsa_encryptPassword | Using Nettle
00:00:00.052 [I] ps.c:268 | purespice_connect | Connected
00:00:00.052 [I] channel_main.c:167 | onMessage_mainName | Guest name: virtual-cyclone
00:00:00.052 [I] channel_main.c:183 | onMessage_mainUUID | Guest UUID: 29fcb125-8868-40e8-8b74-904f5e69c698
00:00:00.060 [I] ps.c:644 | ps_connectChannel | INPUTS channel connected
00:00:00.060 [I] channel.c:323 | onMessage_notify | [notify] keyboard channel is insecure
00:00:00.060 [I] egl.c:289 | egl_initialize | Double buffering is off
00:00:00.060 [I] main.c:1139 | tryRenderer | Using Renderer: EGL
00:00:00.060 [I] wayland.c:120 | waylandInit | Compositor: kwin_wayland_wr
00:00:00.060 [I] wayland.c:130 | waylandInit | Selected : xdg
00:00:00.076 [I] gl.c:58 | waylandGetEGLDisplay | Using eglGetPlatformDisplay
00:00:00.093 [I] egl.c:856 | egl_renderStartup | Single buffer mode
00:00:00.098 [I] egl.c:883 | egl_renderStartup | EGL : 1.5
00:00:00.098 [I] egl.c:884 | egl_renderStartup | Vendor : AMD
00:00:00.098 [I] egl.c:885 | egl_renderStartup | Renderer: AMD Radeon RX 460 Graphics (radeonsi, polaris11, LLVM 19.1.7, DRM 3.60, 6.13.4-arch1-1)
00:00:00.098 [I] egl.c:886 | egl_renderStartup | Version : OpenGL ES 3.2 Mesa 24.3.4-arch1.1
00:00:00.098 [I] egl.c:887 | egl_renderStartup | EGL APIs: OpenGL OpenGL_ES
00:00:00.098 [I] egl.c:958 | egl_renderStartup | Debug messages disabled, enable with egl:debug=true
00:00:00.117 [I] eglutil.c:35 | swapWithDamageInit | Using EGL_KHR_swap_buffers_with_damage
00:00:00.119 [I] main.c:1491 | lg_run | ================================================================================
00:00:00.119 [I] main.c:1492 | lg_run | The host application seems to not be running
00:00:00.119 [I] main.c:1493 | lg_run | Waiting for the host application to start...
00:00:00.427 [I] main.c:1498 | lg_run | ================================================================================
00:00:00.427 [I] main.c:1512 | lg_run | Check the host log in your guest at %ProgramData%\Looking Glass (host)\looking-glass-host.txt
00:00:00.427 [I] main.c:1513 | lg_run | Continuing to wait...
00:00:08.100 [I] agent.c:103 | agent_connect | Connected to the spice guest agent
00:00:13.765 [I] main.c:1590 | lg_run | Guest Information:
00:00:13.765 [I] main.c:1591 | lg_run | Version : B7-rc1
00:00:13.765 [I] main.c:1612 | lg_run | UUID : 29fcb125-8868-40e8-8b74-904f5e69c698
00:00:13.765 [I] main.c:1621 | lg_run | CPU Model: Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz
00:00:13.765 [I] main.c:1622 | lg_run | CPU : 1 sockets, 4 cores, 8 threads
00:00:13.765 [I] main.c:1624 | lg_run | Using : D12
00:00:13.766 [I] main.c:1710 | lg_run | OS : Windows
00:00:13.766 [I] main.c:1712 | lg_run | OS Name : Windows 10 Pro (Build: 26100)
00:00:13.766 [I] main.c:1734 | lg_run | Starting session
00:00:13.766 [I] main.c:553 | main_frameThread | Using DMA buffer support
00:00:14.063 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:00:14.610 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:00:45.850 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:00:47.427 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:01:18.612 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:01:19.913 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:01:28.149 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:01:29.532 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
00:02:49.612 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
02:47:30.573 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
06:16:13.309 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
12:39:27.218 [I] main.c:710 | main_frameThread | Format: FRAME_TYPE_BGRA 3840x2160 (3840x2160) stride:3840 pitch:15360 rotation:0 hdr:0 pq:0
12:44:10.710 [W] channel_main.c:269 | onMessage_mainAgentDisconnected | Disconnected from the spice guest agent: 0
12:44:11.346 [I] main.c:1752 | lg_run | Waiting for the host to restart...
12:44:12.707 [I] agent.c:103 | agent_connect | Connected to the spice guest agent
12:44:13.424 [W] channel_main.c:269 | onMessage_mainAgentDisconnected | Disconnected from the spice guest agent: 0
12:44:32.504 [I] channel.c:269 | channel_internal_disconnect | INPUTS channel disconnected
12:44:32.505 [I] channel.c:269 | channel_internal_disconnect | MAIN channel disconnected
12:44:32.505 [I] ps.c:550 | purespice_process | Shutdown
LG host log
Nothing jumps out at me as suspicious other than the surprising number of starting and stopping, but I don’t know how to enable debug logging.
00:00:00.020 [I] time.c:85 | windowsSetTimerResolution | System timer resolution: 500.0 μs
00:00:00.022 [I] app.c:861 | app_main | Looking Glass Host (B7-rc1)
00:00:00.023 [I] cpuinfo.c:38 | cpuInfo_log | CPU Model: Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz
00:00:00.025 [I] cpuinfo.c:39 | cpuInfo_log | CPU: 1 sockets, 4 cores, 8 threads
00:00:00.028 [I] ivshmem.c:132 | ivshmemInit | IVSHMEM 0* on bus 0x0, device 0x3, function 0x0
00:00:00.039 [I] app.c:879 | app_main | IVSHMEM Size : 128 MiB
00:00:00.040 [I] app.c:880 | app_main | IVSHMEM Address : 0x1E809550000
00:00:00.040 [I] app.c:881 | app_main | Max Pointer Size : 1024 KiB
00:00:00.041 [I] app.c:882 | app_main | KVMFR Version : 20
00:00:00.041 [I] app.c:901 | app_main | Trying : D12
00:00:00.042 [I] d12.c:185 | d12_create | debug:0 trackDamage:1
00:00:00.046 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:00:00.046 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:00:00.047 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:00:00.048 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:00:00.048 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:00:00.049 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:00:00.049 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:00:00.471 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:00:00.481 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:00:00.482 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:00:00.482 [I] app.c:932 | app_main | Using : D12
00:00:00.483 [I] app.c:933 | app_main | Capture Method : Synchronous
00:00:00.484 [I] app.c:768 | lgmpSetup | Max Frame Size : 62 MiB
00:00:00.484 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:00:00.535 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:00:00.536 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:00:00.536 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:00:00.537 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:00:00.537 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:00:00.538 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:00:00.539 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:00:00.770 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:00:00.776 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:00:00.777 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:00:01.040 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:00:01.091 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:00:01.092 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:00:01.092 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:00:01.093 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:00:01.093 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:00:01.094 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:00:01.094 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:00:01.322 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:00:01.327 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:00:01.328 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:00:32.223 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:00:32.284 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:00:32.284 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:00:32.285 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:00:32.285 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:00:32.286 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:00:32.286 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:00:32.287 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:00:32.569 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:00:32.573 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:00:32.573 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:00:33.939 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:00:33.981 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:00:33.981 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:00:33.982 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:00:33.982 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:00:33.982 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:00:33.983 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:00:33.983 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:00:34.144 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:00:34.148 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:00:34.149 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:01:05.027 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:01:05.090 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:01:05.091 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:01:05.091 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:01:05.091 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:01:05.092 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:01:05.092 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:01:05.092 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:01:05.328 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:01:05.332 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:01:05.333 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:01:06.408 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:01:06.455 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:01:06.456 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:01:06.456 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:01:06.457 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:01:06.457 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:01:06.458 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:01:06.458 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:01:06.627 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:01:06.631 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:01:06.631 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:01:14.577 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:01:14.638 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:01:14.639 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:01:14.639 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:01:14.640 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:01:14.640 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:01:14.641 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:01:14.641 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:01:14.870 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:01:14.874 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:01:14.874 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:01:16.043 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:01:16.086 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:01:16.087 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:01:16.088 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:01:16.088 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:01:16.089 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:01:16.089 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:01:16.090 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:01:16.251 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:01:16.257 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:01:16.257 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
00:02:35.504 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
00:02:36.052 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
00:02:36.052 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
00:02:36.053 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
00:02:36.053 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
00:02:36.054 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
00:02:36.054 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
00:02:36.055 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
00:02:36.333 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
00:02:36.338 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
00:02:36.339 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
02:47:16.386 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
02:47:17.134 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
02:47:17.134 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
02:47:17.135 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
02:47:17.135 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
02:47:17.136 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
02:47:17.136 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
02:47:17.137 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
02:47:17.540 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
02:47:17.546 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
02:47:17.546 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
06:15:59.680 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
06:16:00.187 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
06:16:00.187 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
06:16:00.188 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
06:16:00.188 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
06:16:00.188 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
06:16:00.189 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
06:16:00.189 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
06:16:00.612 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
06:16:00.617 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
06:16:00.618 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====
12:39:13.906 [I] app.c:455 | captureStop | ==== [ Capture Stop ] ====
12:39:14.668 [I] d12.c:905 | d12_enumerateDevices | Device Name : \\.\DISPLAY1
12:39:14.668 [I] d12.c:906 | d12_enumerateDevices | Device Description: NVIDIA GeForce RTX 3070
12:39:14.669 [I] d12.c:907 | d12_enumerateDevices | Device Vendor ID : 0x10de
12:39:14.669 [I] d12.c:908 | d12_enumerateDevices | Device Device ID : 0x2484
12:39:14.670 [I] d12.c:909 | d12_enumerateDevices | Device Video Mem : 8018 MiB
12:39:14.670 [I] d12.c:911 | d12_enumerateDevices | Device Sys Mem : 0 MiB
12:39:14.671 [I] d12.c:913 | d12_enumerateDevices | Shared Sys Mem : 16374 MiB
12:39:15.100 [I] d12.c:367 | d12_init | D12 Created Effect: Downsample
12:39:15.107 [I] d12.c:367 | d12_init | D12 Created Effect: HDR16to10
12:39:15.107 [I] app.c:445 | captureStart | ==== [ Capture Start ] ====