tinypilot can't handle resolution changes and frequently hangs
My tinypilot is connected to an "AIMOS" hdmi/usb kvm. Connected devices use various display mode/resolutions. When switching between devices, the display often becomes garbled, usually like this:
After a few seconds, the tinypilot hangs and has to be power cycled.
Is this a known problem with a workaround, or a possible hardware issue?
- WIn reply towgg⬆:@wgg
UPDATE:
The above specific issue does NOT seem to occur with a different unbranded (and crappy/unreliable) KVM switch I have.
However, TinyPilot seems to have some incompatibility with one of the attached devices, which I have verified by plugging it directly in to the TinyPilot. It is onboard HDMI output from a MSI B460M motherboard. When entering the BIOS, the display is garbled, and the (client) machine completely hangs and requires a power cycle. The TinyPilot continues functioning.
Any advice appreciated
FWIW I see the following in the tinypilot logs preceding the behaviour
Jan 15 20:25:19 tinypilot kernel: ------------[ cut here ]------------ Jan 15 20:25:19 tinypilot kernel: WARNING: CPU: 0 PID: 0 at drivers/media/common/videobuf2/videobuf2-core.c:997 vb2_buffer_done+0x22c/0x234 [videobuf2_common] Jan 15 20:25:19 tinypilot kernel: Modules linked in: cmac bnep hci_uart btbcm bluetooth ecdh_generic ecc 8021q usb_f_hid garp stp llc libcomposite tc358743 brcmfmac brcmutil vc4 cec sha256_generic cfg80211 rfkill bcm2835_unicam v3d bcm2835_codec(C) drm_kms_helper bcm2835_isp(C) bcm2835_v4l2(C) v4l2_dv_timings v4l2_mem2mem gpu_sched snd_soc_core bcm2835_mmal_vchiq(C) videobuf2_dma_contig v4l2_fwnode drm videobuf2_vmalloc videobuf2_memops snd_compress snd_bcm2835(C) videobuf2_v4l2 snd_pcm_dmaengine raspberrypi_hwmon drm_panel_orientation_quirks videobuf2_common vc_sm_cma(C) snd_pcm videodev rpivid_mem snd_timer mc snd syscopyarea sysfillrect sysimgblt fb_sys_fops backlight uio_pdrv_genirq uio nvmem_rmem ip_tables x_tables ipv6 overlay i2c_mux_pinctrl i2c_mux dwc2 roles i2c_bcm2835 Jan 15 20:25:19 tinypilot kernel: CPU: 0 PID: 0 Comm: swapper/0 Tainted: G C 5.10.17-v7l+ #1414 Jan 15 20:25:19 tinypilot kernel: Hardware name: BCM2711 Jan 15 20:25:19 tinypilot kernel: Backtrace: Jan 15 20:25:19 tinypilot kernel: [<c0b63050>] (dump_backtrace) from [<c0b633e4>] (show_stack+0x20/0x24) Jan 15 20:25:19 tinypilot kernel: r7:ffffffff r6:00000000 r5:60000193 r4:c12e69fc Jan 15 20:25:19 tinypilot kernel: [<c0b633c4>] (show_stack) from [<c0b67774>] (dump_stack+0xcc/0xf8) Jan 15 20:25:19 tinypilot kernel: [<c0b676a8>] (dump_stack) from [<c0220bac>] (__warn+0xfc/0x114) Jan 15 20:25:19 tinypilot kernel: r10:00000608 r9:00000009 r8:bf21a4cc r7:000003e5 r6:00000009 r5:bf21a4cc Jan 15 20:25:19 tinypilot kernel: r4:bf21ff90 r3:c1205094 Jan 15 20:25:19 tinypilot kernel: [<c0220ab0>] (__warn) from [<c0b63b54>] (warn_slowpath_fmt+0x70/0xd8) Jan 15 20:25:19 tinypilot kernel: r7:000003e5 r6:bf21ff90 r5:c1205048 r4:00000000 Jan 15 20:25:19 tinypilot kernel: [<c0b63ae8>] (warn_slowpath_fmt) from [<bf21a4cc>] (vb2_buffer_done+0x22c/0x234 [videobuf2_common]) Jan 15 20:25:19 tinypilot kernel: r9:c2bfac10 r8:00000000 r7:00000001 r6:00000005 r5:c3881800 r4:c2bfa3a8 Jan 15 20:25:19 tinypilot kernel: [<bf21a2a0>] (vb2_buffer_done [videobuf2_common]) from [<bf2e49c0>] (unicam_isr+0x124/0x3a4 [bcm2835_unicam]) Jan 15 20:25:19 tinypilot kernel: r9:c2bfac10 r8:00000000 r7:00000001 r6:c2bfa000 r5:c2bfa000 r4:bf2eb2c0 Jan 15 20:25:19 tinypilot kernel: [<bf2e489c>] (unicam_isr [bcm2835_unicam]) from [<c0287e20>] (__handle_irq_event_percpu+0xa8/0x268) Jan 15 20:25:19 tinypilot kernel: r10:c1201db0 r9:ffffe000 r8:00000034 r7:c1a3db00 r6:00000000 r5:c1a3db6c Jan 15 20:25:19 tinypilot kernel: r4:c3030200 Jan 15 20:25:19 tinypilot kernel: [<c0287d78>] (__handle_irq_event_percpu) from [<c028801c>] (handle_irq_event_percpu+0x3c/0x90) Jan 15 20:25:19 tinypilot kernel: r10:c0e1edfc r9:c1200000 r8:c1810800 r7:00000001 r6:c1a3db00 r5:c1a3db6c Jan 15 20:25:19 tinypilot kernel: r4:c1205048 Jan 15 20:25:19 tinypilot kernel: [<c0287fe0>] (handle_irq_event_percpu) from [<c02880c4>] (handle_irq_event+0x54/0x78) Jan 15 20:25:19 tinypilot kernel: r6:00000000 r5:c1a3db6c r4:c1a3db00 Jan 15 20:25:19 tinypilot kernel: [<c0288070>] (handle_irq_event) from [<c028ce60>] (handle_fasteoi_irq+0xd4/0x18c) Jan 15 20:25:19 tinypilot kernel: r7:00000001 r6:00000000 r5:c1205b3c r4:c1a3db00 Jan 15 20:25:19 tinypilot kernel: [<c028cd8c>] (handle_fasteoi_irq) from [<c0286ddc>] (generic_handle_irq+0x44/0x54) Jan 15 20:25:19 tinypilot kernel: r5:00000000 r4:c1094d10 Jan 15 20:25:19 tinypilot kernel: [<c0286d98>] (generic_handle_irq) from [<c028753c>] (__handle_domain_irq+0x6c/0xc4) Jan 15 20:25:19 tinypilot kernel: [<c02874d0>] (__handle_domain_irq) from [<c020135c>] (gic_handle_irq+0x90/0xa4) Jan 15 20:25:19 tinypilot kernel: r9:c1200000 r8:c1094d1c r7:c1201e70 r6:f080200c r5:f0802000 r4:c1205b3c Jan 15 20:25:19 tinypilot kernel: [<c02012cc>] (gic_handle_irq) from [<c0200abc>] (__irq_svc+0x5c/0x7c) Jan 15 20:25:19 tinypilot kernel: Exception stack(0xc1201e70 to 0xc1201eb8) Jan 15 20:25:19 tinypilot kernel: 1e60: c0b733ec a0000013 60000093 60000093 Jan 15 20:25:19 tinypilot kernel: 1e80: a0000013 c1a9c114 000000ff c1a9c110 a0000013 c133ba3f c0e1edfc c1201ed4 Jan 15 20:25:19 tinypilot kernel: 1ea0: c1200000 c1201ec0 00000000 c0b733e4 60000013 ffffffff Jan 15 20:25:19 tinypilot kernel: r9:c1200000 r8:a0000013 r7:c1201ea4 r6:ffffffff r5:60000013 r4:c0b733e4 Jan 15 20:25:19 tinypilot kernel: [<c0b73384>] (_raw_read_unlock_irqrestore) from [<c099b4a4>] (led_trigger_event+0x68/0x6c) Jan 15 20:25:19 tinypilot kernel: r5:c1a9c114 r4:c1a9c07c Jan 15 20:25:19 tinypilot kernel: [<c099b43c>] (led_trigger_event) from [<c099d08c>] (ledtrig_cpu+0xd0/0xf0) Jan 15 20:25:19 tinypilot kernel: r9:c133ba3f r8:00000004 r7:eff52030 r6:00000001 r5:000002fd r4:c1404eb8 Jan 15 20:25:19 tinypilot kernel: [<c099cfbc>] (ledtrig_cpu) from [<c0208920>] (arch_cpu_idle_exit+0x1c/0x20) Jan 15 20:25:19 tinypilot kernel: r9:c133ba3f r8:00000001 r7:00000001 r6:c12050e4 r5:c120509c r4:ffffe000 Jan 15 20:25:19 tinypilot kernel: [<c0208904>] (arch_cpu_idle_exit) from [<c0258774>] (do_idle+0xb8/0x168) Jan 15 20:25:19 tinypilot kernel: [<c02586bc>] (do_idle) from [<c0258af8>] (cpu_startup_entry+0x28/0x30) Jan 15 20:25:19 tinypilot kernel: r10:00000144 r9:c1053a60 r8:ffffffff r7:c1053a60 r6:00000001 r5:c1205048 Jan 15 20:25:19 tinypilot kernel: r4:000000d8 r3:c108a294 Jan 15 20:25:19 tinypilot kernel: [<c0258ad0>] (cpu_startup_entry) from [<c0b6be28>] (rest_init+0xbc/0xc4) Jan 15 20:25:19 tinypilot kernel: [<c0b6bd6c>] (rest_init) from [<c1000ab4>] (arch_call_rest_init+0x18/0x1c) Jan 15 20:25:19 tinypilot kernel: r5:c1205048 r4:c1354068 Jan 15 20:25:19 tinypilot kernel: [<c1000a9c>] (arch_call_rest_init) from [<c1001098>] (start_kernel+0x568/0x59c) Jan 15 20:25:19 tinypilot kernel: [<c1000b30>] (start_kernel) from [<00000000>] (0x0) Jan 15 20:25:19 tinypilot kernel: ---[ end trace db1f60a0610e09a8 ]--- Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.573 stream] -- Got V4L2 event Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.573 stream] -- Got V4L2_EVENT_SOURCE_CHANGE: source changed Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.573 stream] -- Destroying workers pool JPEG ... Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.627 stream] -- Capturing stopped Jan 15 20:25:20 tinypilot kernel: ------------[ cut here ]------------ Jan 15 20:25:20 tinypilot kernel: WARNING: CPU: 1 PID: 712 at drivers/media/common/videobuf2/videobuf2-core.c:1945 __vb2_queue_cancel+0x1e0/0x258 [videobuf2_common] Jan 15 20:25:20 tinypilot kernel: Modules linked in: cmac bnep hci_uart btbcm bluetooth ecdh_generic ecc 8021q usb_f_hid garp stp llc libcomposite tc358743 brcmfmac brcmutil vc4 cec sha256_generic cfg80211 rfkill bcm2835_unicam v3d bcm2835_codec(C) drm_kms_helper bcm2835_isp(C) bcm2835_v4l2(C) v4l2_dv_timings v4l2_mem2mem gpu_sched snd_soc_core bcm2835_mmal_vchiq(C) videobuf2_dma_contig v4l2_fwnode drm videobuf2_vmalloc videobuf2_memops snd_compress snd_bcm2835(C) videobuf2_v4l2 snd_pcm_dmaengine raspberrypi_hwmon drm_panel_orientation_quirks videobuf2_common vc_sm_cma(C) snd_pcm videodev rpivid_mem snd_timer mc snd syscopyarea sysfillrect sysimgblt fb_sys_fops backlight uio_pdrv_genirq uio nvmem_rmem ip_tables x_tables ipv6 overlay i2c_mux_pinctrl i2c_mux dwc2 roles i2c_bcm2835 Jan 15 20:25:20 tinypilot kernel: CPU: 1 PID: 712 Comm: stream Tainted: G WC 5.10.17-v7l+ #1414 Jan 15 20:25:20 tinypilot kernel: Hardware name: BCM2711 Jan 15 20:25:20 tinypilot kernel: Backtrace: Jan 15 20:25:20 tinypilot kernel: [<c0b63050>] (dump_backtrace) from [<c0b633e4>] (show_stack+0x20/0x24) Jan 15 20:25:20 tinypilot kernel: r7:ffffffff r6:00000000 r5:60000013 r4:c12e69fc Jan 15 20:25:20 tinypilot kernel: [<c0b633c4>] (show_stack) from [<c0b67774>] (dump_stack+0xcc/0xf8) Jan 15 20:25:20 tinypilot kernel: [<c0b676a8>] (dump_stack) from [<c0220bac>] (__warn+0xfc/0x114) Jan 15 20:25:20 tinypilot kernel: r10:bf2e937c r9:00000009 r8:bf21a6b4 r7:00000799 r6:00000009 r5:bf21a6b4 Jan 15 20:25:20 tinypilot kernel: r4:bf21ff90 r3:c1205094 Jan 15 20:25:20 tinypilot kernel: [<c0220ab0>] (__warn) from [<c0b63b54>] (warn_slowpath_fmt+0x70/0xd8) Jan 15 20:25:20 tinypilot kernel: r7:00000799 r6:bf21ff90 r5:c1205048 r4:00000000 Jan 15 20:25:20 tinypilot kernel: [<c0b63ae8>] (warn_slowpath_fmt) from [<bf21a6b4>] (__vb2_queue_cancel+0x1e0/0x258 [videobuf2_common]) Jan 15 20:25:20 tinypilot kernel: r9:bf174098 r8:c2bfa508 r7:00000001 r6:c2bfa3a8 r5:c35ad0c0 r4:c2bfa3a8 Jan 15 20:25:20 tinypilot kernel: [<bf21a4d4>] (__vb2_queue_cancel [videobuf2_common]) from [<bf21b6b4>] (vb2_core_streamoff+0x28/0xbc [videobuf2_common]) Jan 15 20:25:20 tinypilot kernel: r10:bf2e937c r9:bf174098 r8:c2bfa508 r7:00000001 r6:c1205048 r5:c35ad0c0 Jan 15 20:25:20 tinypilot kernel: r4:c2bfa3a8 r3:00000001 Jan 15 20:25:20 tinypilot kernel: [<bf21b68c>] (vb2_core_streamoff [videobuf2_common]) from [<bf1f00f8>] (vb2_streamoff+0x24/0x64 [videobuf2_v4l2]) Jan 15 20:25:20 tinypilot kernel: r5:c35ad0c0 r4:00000001 Jan 15 20:25:20 tinypilot kernel: [<bf1f00d4>] (vb2_streamoff [videobuf2_v4l2]) from [<bf1f0184>] (vb2_ioctl_streamoff+0x4c/0x50 [videobuf2_v4l2]) Jan 15 20:25:20 tinypilot kernel: [<bf1f0138>] (vb2_ioctl_streamoff [videobuf2_v4l2]) from [<bf1740c4>] (v4l_streamoff+0x2c/0x30 [videodev]) Jan 15 20:25:20 tinypilot kernel: r5:40045613 r4:bf1f0138 Jan 15 20:25:20 tinypilot kernel: [<bf174098>] (v4l_streamoff [videodev]) from [<bf179114>] (__video_do_ioctl+0x234/0x460 [videodev]) Jan 15 20:25:20 tinypilot kernel: r5:40045613 r4:c2bfa520 Jan 15 20:25:20 tinypilot kernel: [<bf178ee0>] (__video_do_ioctl [videodev]) from [<bf179b28>] (video_usercopy+0x128/0x5ac [videodev]) Jan 15 20:25:20 tinypilot kernel: r10:c361fe3c r9:b36f8aac r8:00000000 r7:c35ad0c0 r6:c1205048 r5:40045613 Jan 15 20:25:20 tinypilot kernel: r4:40045613 Jan 15 20:25:20 tinypilot kernel: [<bf179a00>] (video_usercopy [videodev]) from [<bf179fcc>] (video_ioctl2+0x20/0x24 [videodev]) Jan 15 20:25:20 tinypilot kernel: r10:00000009 r9:c361e000 r8:00000000 r7:c35ad0c0 r6:c35ad0c1 r5:c1205048 Jan 15 20:25:20 tinypilot kernel: r4:bf179fac Jan 15 20:25:20 tinypilot kernel: [<bf179fac>] (video_ioctl2 [videodev]) from [<bf1721f4>] (v4l2_ioctl+0x4c/0x60 [videodev]) Jan 15 20:25:20 tinypilot kernel: [<bf1721a8>] (v4l2_ioctl [videodev]) from [<c045178c>] (sys_ioctl+0x1d4/0x8ec) Jan 15 20:25:20 tinypilot kernel: r5:c1205048 r4:40045613 Jan 15 20:25:20 tinypilot kernel: [<c04515b8>] (sys_ioctl) from [<c0200040>] (ret_fast_syscall+0x0/0x28) Jan 15 20:25:20 tinypilot kernel: Exception stack(0xc361ffa8 to 0xc361fff0) Jan 15 20:25:20 tinypilot kernel: ffa0: 00000000 b6c30cf0 00000009 40045613 b36f8aac 002246b0 Jan 15 20:25:20 tinypilot kernel: ffc0: 00000000 b6c30cf0 00000004 00000036 b25022c8 40045613 40045613 00000009 Jan 15 20:25:20 tinypilot kernel: ffe0: 00075160 b36f8a8c 0002770c b6bb551c Jan 15 20:25:20 tinypilot kernel: r10:00000036 r9:c361e000 r8:c0200204 r7:00000036 r6:00000004 r5:b6c30cf0 Jan 15 20:25:20 tinypilot kernel: r4:00000000 Jan 15 20:25:20 tinypilot kernel: ---[ end trace db1f60a0610e09a9 ]--- Jan 15 20:25:20 tinypilot kernel: videobuf2_common: driver bug: stop_streaming operation is leaving buf 7c39afb5 in active state Jan 15 20:25:20 tinypilot kernel: videobuf2_common: driver bug: stop_streaming operation is leaving buf 4a21f7de in active state Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.634 stream] -- Device fd=9 closed Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.634 stream] -- Changed video frame to BLANK Jan 15 20:25:20 tinypilot ustreamer[687]: ================================================================================ Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.635 stream] -- Device fd=9 opened Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.635 stream] -- Using input channel: 0 Jan 15 20:25:20 tinypilot ustreamer[687]: -- ERROR [412.676 stream] -- Requested resolution=640x480 is unavailable Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.715 stream] -- Using resolution: 1280x720 Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.715 stream] -- Using pixelformat: UYVY Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.715 stream] -- Querying HW FPS changing is not supported Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.715 stream] -- Using IO method: MMAP Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.729 stream] -- Requested 5 device buffers, got 5 Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.737 stream] -- Capturing started Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.750 stream] -- Using JPEG quality: 80% Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.750 stream] -- Creating pool JPEG with 3 workers ... Jan 15 20:25:20 tinypilot ustreamer[687]: -- INFO [412.750 stream] -- Capturing ...
- Michael Lynch @michael2022-01-17 21:26:07.855Z
Thanks for reporting this!
Is that kernel exception reproducible or did it just happen the one time?