On 1/8/23 19:32, Jonathan Gray wrote:
On Sat, Jan 07, 2023 at 09:46:17AM +0000, [email protected] wrote:
Synopsis: Kernel process drmwq spikes CPU usage every 20 seconds on
Protectcli Vault-2 Port hardware.
Category: kernel
Environment:
System : OpenBSD 7.2
Details : OpenBSD 7.2 (GENERIC.MP) #4: Mon Dec 12 06:06:42 MST
2022
[email protected]:/usr/src/sys/arch/amd64/compile/GENERIC.MP
Architecture: OpenBSD.amd64
Machine : amd64
Description:
I use this machine as a router. After upgrading to 7.2 I started
getting pretty bad packet loss exactly every 20 seconds. After some
investigation I noticed the drmwq kernel process using a lot of CPU every 20
seconds. When I plug a screen into the HDMI port on the machine, it stops
spiking the CPU and the problem goes away.
How-To-Repeat:
Install OpenBSD 7.2 on a Protectcli Vault-2 port machine and observe
kernel threads, the CPU will spike exactly every 20 seconds. This spike
should cause packet loss that can be observed by running a ping.
Fix:
Plug a screen into the HDMI port of the machine. The screen does not
have to be turned on.
Try this. Diff against -current which has different drm code.
Check your dmesg for the message after it occurs.
no change in dmesg.
Index: sys/dev/pci/drm/i915/display/intel_hotplug.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/drm/i915/display/intel_hotplug.c,v
retrieving revision 1.4
diff -u -p -r1.4 intel_hotplug.c
--- sys/dev/pci/drm/i915/display/intel_hotplug.c 1 Jan 2023 01:34:56
-0000 1.4
+++ sys/dev/pci/drm/i915/display/intel_hotplug.c 9 Jan 2023 00:25:18
-0000
@@ -194,7 +194,7 @@ intel_hpd_irq_storm_switch_to_polling(st
dev_priv->display.hotplug.stats[pin].state !=
HPD_MARK_DISABLED)
continue;
- drm_info(&dev_priv->drm,
+ drm_warn(&dev_priv->drm,
"HPD interrupt storm detected on connector %s: "
"switching from hotplug detection to polling\n",
connector->base.name);