Strange "checkerboard" tearing in B7-rc1

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='{&quot;driver&quot;:&quot;ivshmem-plain&quot;,&quot;id&quot;:&quot;shmem0&quot;,&quot;memdev&quot;:&quot;looking-glass&quot;}'/>
    <qemu:arg value='-object'/>
    <qemu:arg value='{&quot;qom-type&quot;:&quot;memory-backend-file&quot;,&quot;id&quot;:&quot;looking-glass&quot;,&quot;mem-path&quot;:&quot;/dev/kvmfr0&quot;,&quot;size&quot;:134217728,&quot;share&quot;: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 ] ====

Upgrade to B7 stable which was just tagged.