No internet connection
  1. Home
  2. Technical Support

tinypilot can't handle resolution changes and frequently hangs

By @wgg
    2022-01-15 02:47:15.758Z

    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?

    • 4 replies
    1. W
      @wgg
        2022-01-15 02:49:30.680Z

        Note the HDMI input to the tinypilot is via a HDMI splitter, and there are no display issues on the monitor attached to the other HDMI output.

        1. W
          In reply towgg:
          @wgg
            2022-01-15 20:16:11.814Z

            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

            1. W@wgg
                2022-01-15 20:23:17.157Z2022-01-15 20:30:43.030Z

                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 ...
                
                1. Thanks for reporting this!

                  Is that kernel exception reproducible or did it just happen the one time?