Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

bcm2835-codec: encoder stops working after some time

Đang mở
#7,675 1 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

Chưa có ai nhận issue này.

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
32/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Sôi nổi
Công nghệ
c, linux
Lĩnh vực
embedded-iot

Hướng nghiên cứu

Start from the dmesg strings: locate bcm2835_mmal_vchiq: timed out waiting for sync completion and vchiq_mmal_component_init: failed to create component in the MMAL/VCHIQ driver code, plus bcm2835_codec_create_component and bcm2835_codec_stop_streaming in the bcm2835-codec media driver. Trace how the sync-completion timeout leaves GPU-side resources or component handles unreleased across repeated start/stop cycles, and check error-path cleanup around -62 (ETIMEIMEOUT) failures. Done means identifying the leak or stuck state on repeated start/stop of ril.video_encode/ril.image_encode and confirming a reproduction path; the issue itself states reproduction is unknown, so this is maintainer-level kernel debugging rather than a startable first fix.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Describe the bug

PiKVM users report that sometimes after several restarts and successful operation sessions, JPEG encoder (image_encode) and H.264 (video_encode) stop initializing. It seems this is a bit similar to #7163

Dmesg:

[17056.541287] bcm2835_mmal_vchiq: timed out waiting for sync completion
[17056.547944] bcm2835-codec bcm2835-codec: bcm2835_codec_stop_streaming: Failed disabling i/p port, ret -62
[17059.613354] bcm2835_mmal_vchiq: timed out waiting for sync completion
[17059.619987] bcm2835-codec bcm2835-codec: bcm2835_codec_stop_streaming: Failed enabling component, ret -62
[17062.685429] bcm2835_mmal_vchiq: timed out waiting for sync completion
[17065.757505] bcm2835_mmal_vchiq: timed out waiting for sync completion
[94500.799477] bcm2835_mmal_vchiq: timed out waiting for sync completion
[94500.806073] bcm2835_mmal_vchiq: vchiq_mmal_component_init: failed to create component -62 (Not enough GPU mem?)
[94500.816710] bcm2835-codec bcm2835-codec: bcm2835_codec_create_component: failed to create component ril.video_encode
[108339.129068] bcm2835_mmal_vchiq: timed out waiting for sync completion
[108339.135924] bcm2835_mmal_vchiq: vchiq_mmal_component_init: failed to create component -62 (Not enough GPU mem?)
[108339.147743] bcm2835-codec bcm2835-codec: bcm2835_codec_create_component: failed to create component ril.video_encode
[108350.649267] bcm2835_mmal_vchiq: timed out waiting for sync completion
[108350.656703] bcm2835_mmal_vchiq: vchiq_mmal_component_init: failed to create component -62 (Not enough GPU mem?)
[108350.667764] bcm2835-codec bcm2835-codec: bcm2835_codec_create_component: failed to create component ril.video_encode
[109034.436851] bcm2835_mmal_vchiq: timed out waiting for sync completion
[109034.444505] bcm2835_mmal_vchiq: vchiq_mmal_component_init: failed to create component -62 (Not enough GPU mem?)
[109034.455702] bcm2835-codec bcm2835-codec: bcm2835_codec_create_component: failed to create component ril.video_encode

And (another user):

18:29:31  bcm2835_mmal_vchiq: timed out waiting for sync completion
18:29:31  vchiq_mmal_component_init: failed to create component -62
18:29:31  bcm2835-codec: failed to create component ril.image_encode
Steps to reproduce the behaviour

The exact method for reproducing is unknown, but it is said that this happens after several restarts of the process that initializes the M2M codec. Just run, stop and run again any encoder like gstreamer to capture and encode stream from tc358743 to h264, several times.

I can ask users to perform special diagnostics or provide SSH.

Device (s)

Raspberry Pi CM4

System
  • Arch Linux ARM
  • version 288930ab4712b99596f32732664aaaeb881ef1e0 (clean) (release) (start)
  • 6.12.105-2-rpi (built from 73b1c785241360882ab9f7fb0793e775c25db325)
Logs
[root@cobas-pure-box kvmd-webterm]# cat /boot/config.txt
# PiKVM
# See /boot/overlays/README for all available options
initramfs initramfs-linux.img followkernel

dtoverlay=cma,cma-192
hdmi_force_hotplug=1
gpu_mem=192
enable_uart=1
dtoverlay=disable-bt

# USB emulation
dtoverlay=dwc2,dr_mode=peripheral

# Video and audio
dtoverlay=tc358743,4lane=1
dtoverlay=tc358743-audio

# I2C (display)
dtparam=i2c_arm=on

# Clock
dtoverlay=i2c-rtc,pcf8563,wakeup-source

# Passthrough
dtoverlay=vc4-kms-v3d
disable_overscan=1
dtparam=ant2

[root@cobas-pure-box kvmd-webterm]# cat /boot/cmdline.txt
root=LABEL=PIROOT ro rootwait console=serial0,115200 console=tty1 fsck.repair=yes audit=0
Additional context

No response

Ngôn ngữ chính
C
Star
13.2k
Fork
5.5k
Merge trung bình
2 ngày 9 giờ
Pull request đã merge (30 ngày)
21

Chuẩn bị môi trường

Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của raspberrypi/linux

Tất cả issue của raspberrypi/linux

Issue tương tự

Thêm issue về C

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.