Qrexec-client vchan failed | qubes.InputKeyboard

My usb keyboard disconnects intermittently. Here is the journal from dom0 when it happens (R4.1.3)

Using q-p-d as shorthand for qrexec-policy-daemon and with newlines added for clarity:

q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0

q-p-d[19226]: qrexec-client[19226]: qrexec-client.c:626:main: Failed to open data vchan connection
q-p-d[19250]: qrexec-client[19250]: qrexec-client.c:626:main: Failed to open data vchan connection
q-p-d[19274]: qrexec-client[19274]: qrexec-client.c:626:main: Failed to open data vchan connection
q-p-d[19322]: qrexec-client[19322]: qrexec-client.c:626:main: Failed to open data vchan connection

kernel: input: sys-usb: <Keyboard Brand and Name> as /devices/virtual/input/input49
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
systemd-logind[1859]: Watching system buttons on /dev/input/event11 (sys-usb: <Keyboard Brand and Name> Keyboard)
kernel: input: sys-usb: <Keyboard Brand and Name> Consumer Control as /devices/virtual/input/input50
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
systemd-logind[1859]: Watching system buttons on /dev/input/event24 (sys-usb: <Keyboard Brand and Name> Consumer Control)
kernel: input: sys-usb: <Keyboard Brand and Name> as /devices/virtual/input/input51

q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
q-p-d[6121]: qrexec: qubes.InputKeyboard: sys-usb -> dom0: error while executing: qrexec-client failed:
        ['/usr/lib/qubes/qrexec-client', '-d', 'dom0', '-c', 'SOCKET16,sys-usb,3', '-E', 'QUBESRPC qubes.InputKeyboard+ sys-usb keyword adminvm']
q-p-d[6121]: qrexec: qubes.InputKeyboard: sys-usb -> dom0: error while executing: qrexec-client failed:
        ['/usr/lib/qubes/qrexec-client', '-d', 'dom0', '-c', 'SOCKET13,sys-usb,3', '-E', 'QUBESRPC qubes.InputKeyboard+ sys-usb keyword adminvm']
q-p-d[6121]: qrexec: qubes.InputKeyboard: sys-usb -> dom0: error while executing: qrexec-client failed:
        ['/usr/lib/qubes/qrexec-client', '-d', 'dom0', '-c', 'SOCKET15,sys-usb,3', '-E', 'QUBESRPC qubes.InputKeyboard+ sys-usb keyword adminvm']
q-p-d[6121]: qrexec: qubes.InputKeyboard: sys-usb -> dom0: error while executing: qrexec-client failed:
        ['/usr/lib/qubes/qrexec-client', '-d', 'dom0', '-c', 'SOCKET17,sys-usb,3', '-E', 'QUBESRPC qubes.InputKeyboard+ sys-usb keyword adminvm']

systemd-logind[1859]: Watching system buttons on /dev/input/event25 (sys-usb: <Keyboard Brand and Name>)
kernel: input: sys-usb: <Keyboard Brand and Name> System Control as /devices/virtual/input/input52
systemd-logind[1859]: Watching system buttons on /dev/input/event26 (sys-usb: <Keyboard Brand and Name> System Control)

...

q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
kernel: input: sys-usb: <Keyboard Brand and Name> Consumer Control as /devices/virtual/input/input53
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
systemd-logind[1859]: Watching system buttons on /dev/input/event11 (sys-usb: <Keyboard Brand and Name> Consumer Control)
kernel: input: sys-usb: <Keyboard Brand and Name> System Control as /devices/virtual/input/input54
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
systemd-logind[1859]: Watching system buttons on /dev/input/event24 (sys-usb: <Keyboard Brand and Name> System Control)
kernel: input: sys-usb: <Keyboard Brand and Name> Keyboard as /devices/virtual/input/input55
q-p-d[6121]: qrexec: qubes.InputKeyboard+: sys-usb -> @adminvm: allowed to dom0
kernel: input: sys-usb: <Keyboard Brand and Name> as /devices/virtual/input/input56

How can I begin to debug this?
Why does the journal contain messages about qubes.InputKeyboard+ from sys-usb -> @adminvm: allow to dom0 only right before this error?
What does failed to open vchan connection indicate? Is this a bug in Qubes, in my sys-usb or dom0, or with my keyboard?