datrixs / datrix-ustreamer

datrix-ustreamer is based on the ustreamer project and ported to Rockchip.
GNU General Public License v3.0
1 stars 1 forks source link

Mali GPU OOM #1

Closed floydelcy closed 1 month ago

floydelcy commented 1 month ago

when I changed the config "forever:false" and comment "--persistent" in override.yaml to let streamer poll the states all time, It works well before hdmi-in unpluged or no signal,when hdmi has no signal or unpluged for few minutes the kvmd will crush and restart, there are some OOM mesesages in kernel log

2024-07-09T08:06:59.061203+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => ================================================================================
2024-07-09T08:06:59.065330+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.312    stream] -- Device fd=23 opened
2024-07-09T08:06:59.066749+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.312    stream] -- Using resolution: 1920x1080
2024-07-09T08:06:59.067838+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.312    stream] -- Using format: UYVY
2024-07-09T08:06:59.068096+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.312    stream] -- Querying HW FPS changing is not supported
2024-07-09T08:06:59.069032+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.312    stream] -- Using IO method: MMAP
2024-07-09T08:06:59.338185+08:00 orangepicm4 kernel: [118195.997791] rkisp_hw fdff0000.rkisp: set isp clk = 396000000Hz
2024-07-09T08:06:59.371112+08:00 orangepicm4 kernel: [118195.999228] rockchip-csi2-dphy0: dphy0, data_rate_mbps 620
2024-07-09T08:06:59.371174+08:00 orangepicm4 kernel: [118195.999310] rockchip-csi2-dphy csi2-dphy0: csi2_dphy_s_stream stream on:1, dphy0, ret 0
2024-07-09T08:07:00.360818+08:00 orangepicm4 kernel: [118196.981505] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.465127+08:00 orangepicm4 kernel: [118196.981669] systemd-journal invoked oom-killer: gfp_mask=0x1100cca(GFP_HIGHUSER_MOVABLE), order=0, oom_score_adj=-250
2024-07-09T08:07:00.465415+08:00 orangepicm4 kernel: [118196.981679] CPU: 0 PID: 583 Comm: systemd-journal Not tainted 5.10.160-rockchip-rk356x #1.0.4
2024-07-09T08:07:00.465470+08:00 orangepicm4 kernel: [118196.981683] Hardware name: Rockchip RK3566 Orange Pi CM4 Board (DT)
2024-07-09T08:07:00.465481+08:00 orangepicm4 kernel: [118196.981689] Call trace:
2024-07-09T08:07:00.465486+08:00 orangepicm4 kernel: [118196.981703]  dump_backtrace+0x0/0x1b0
2024-07-09T08:07:00.465491+08:00 orangepicm4 kernel: [118196.981709]  show_stack+0x20/0x2c
2024-07-09T08:07:00.465495+08:00 orangepicm4 kernel: [118196.981716]  dump_stack_lvl+0xc8/0xf8
2024-07-09T08:07:00.465498+08:00 orangepicm4 kernel: [118196.981720]  dump_stack+0x18/0x34
2024-07-09T08:07:00.465502+08:00 orangepicm4 kernel: [118196.981725]  dump_header+0x60/0x204
2024-07-09T08:07:00.465506+08:00 orangepicm4 kernel: [118196.981734]  oom_kill_process+0xac/0x15c
2024-07-09T08:07:00.465509+08:00 orangepicm4 kernel: [118196.981739]  out_of_memory+0x2c4/0x2f4
2024-07-09T08:07:00.465514+08:00 orangepicm4 kernel: [118196.981744]  __alloc_pages_nodemask+0x870/0x958
2024-07-09T08:07:00.465518+08:00 orangepicm4 kernel: [118196.981750]  alloc_pages.constprop.0+0x1c/0x28
2024-07-09T08:07:00.465521+08:00 orangepicm4 kernel: [118196.981755]  do_swap_page+0x108/0x4b8
2024-07-09T08:07:00.465525+08:00 orangepicm4 kernel: [118196.981760]  handle_pte_fault+0x578/0x7bc
2024-07-09T08:07:00.465530+08:00 orangepicm4 kernel: [118196.981764]  __handle_mm_fault+0xf4/0x10c
2024-07-09T08:07:00.465574+08:00 orangepicm4 kernel: [118196.981768]  handle_mm_fault+0xe0/0xe4
2024-07-09T08:07:00.465583+08:00 orangepicm4 kernel: [118196.981775]  do_page_fault+0x2a8/0x3e8
2024-07-09T08:07:00.465644+08:00 orangepicm4 kernel: [118196.981780]  do_translation_fault+0x4c/0x6c
2024-07-09T08:07:00.465652+08:00 orangepicm4 kernel: [118196.981785]  do_mem_abort+0x4c/0xb4
2024-07-09T08:07:00.465658+08:00 orangepicm4 kernel: [118196.981792]  el0_da+0x3c/0x50
2024-07-09T08:07:00.465663+08:00 orangepicm4 kernel: [118196.981797]  el0_sync_handler+0xc8/0x134
2024-07-09T08:07:00.465704+08:00 orangepicm4 kernel: [118196.981802]  el0_sync+0x1a0/0x1c0
2024-07-09T08:07:00.465712+08:00 orangepicm4 kernel: [118196.981806] Mem-Info:
2024-07-09T08:07:00.465717+08:00 orangepicm4 kernel: [118196.981818] active_anon:601 inactive_anon:467 isolated_anon:0
2024-07-09T08:07:00.465722+08:00 orangepicm4 kernel: [118196.981818]  active_file:755 inactive_file:517 isolated_file:3
2024-07-09T08:07:00.465762+08:00 orangepicm4 kernel: [118196.981818]  unevictable:430012 dirty:15 writeback:0
2024-07-09T08:07:00.465771+08:00 orangepicm4 kernel: [118196.981818]  slab_reclaimable:8268 slab_unreclaimable:12380
2024-07-09T08:07:00.465813+08:00 orangepicm4 kernel: [118196.981818]  mapped:16262 shmem:430047 pagetables:1015 bounce:0
2024-07-09T08:07:00.465821+08:00 orangepicm4 kernel: [118196.981818]  free:21005 free_pcp:885 free_cma:18337
2024-07-09T08:07:00.465880+08:00 orangepicm4 kernel: [118196.981826] Node 0 active_anon:2404kB inactive_anon:1868kB active_file:3020kB inactive_file:2068kB unevictable:1720048kB isolated(anon):0kB isolated(file):12kB mapped:65048kB dirty:60kB writeback:0kB shmem:1720188kB writeback_tmp:0kB kernel_stack:4864kB all_unreclaimable? no
2024-07-09T08:07:00.465889+08:00 orangepicm4 kernel: [118196.981837] DMA free:84020kB min:20148kB low:22148kB high:24148kB reserved_highatomic:0KB active_anon:2588kB inactive_anon:2300kB active_file:3692kB inactive_file:2728kB unevictable:1720048kB writepending:60kB present:2095104kB managed:2025716kB mlocked:0kB pagetables:4060kB bounce:0kB free_pcp:3544kB local_pcp:1104kB free_cma:73348kB
2024-07-09T08:07:00.465930+08:00 orangepicm4 kernel: [118196.981840] lowmem_reserve[]: 0 0 0 0
2024-07-09T08:07:00.465938+08:00 orangepicm4 kernel: [118196.981852] DMA: 1547*4kB (UMEC) 1406*8kB (UMEC) 376*16kB (UMEC) 288*32kB (UMC) 121*64kB (MC) 44*128kB (C) 23*256kB (C) 21*512kB (C) 11*1024kB (C) 5*2048kB (C) 0*4096kB = 84188kB
2024-07-09T08:07:00.465944+08:00 orangepicm4 kernel: [118196.981903] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB
2024-07-09T08:07:00.465981+08:00 orangepicm4 kernel: [118196.981907] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=32768kB
2024-07-09T08:07:00.465989+08:00 orangepicm4 kernel: [118196.981911] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=2048kB
2024-07-09T08:07:00.465995+08:00 orangepicm4 kernel: [118196.981915] Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=64kB
2024-07-09T08:07:00.466061+08:00 orangepicm4 kernel: [118196.981918] 431356 total pagecache pages
2024-07-09T08:07:00.466070+08:00 orangepicm4 kernel: [118196.981925] 44 pages in swap cache
2024-07-09T08:07:00.466075+08:00 orangepicm4 kernel: [118196.981929] Swap cache stats: add 344424, delete 344336, find 18737/152249
2024-07-09T08:07:00.466080+08:00 orangepicm4 kernel: [118196.981932] Free swap  = 875640kB
2024-07-09T08:07:00.466369+08:00 orangepicm4 kernel: [118196.981934] Total swap = 1012856kB
2024-07-09T08:07:00.466379+08:00 orangepicm4 kernel: [118196.981937] 523776 pages RAM
2024-07-09T08:07:00.466384+08:00 orangepicm4 kernel: [118196.981940] 0 pages HighMem/MovableOnly
2024-07-09T08:07:00.466389+08:00 orangepicm4 kernel: [118196.981942] 17347 pages reserved
2024-07-09T08:07:00.466394+08:00 orangepicm4 kernel: [118196.981945] 32768 pages cma reserved
2024-07-09T08:07:00.466398+08:00 orangepicm4 kernel: [118196.981948] Tasks state (memory values in pages):
2024-07-09T08:07:00.466402+08:00 orangepicm4 kernel: [118196.981951] [  pid  ]   uid  tgid total_vm      rss pgtables_bytes swapents oom_score_adj name
2024-07-09T08:07:00.466407+08:00 orangepicm4 kernel: [118196.982000] [    326]     0   326     6282       18    61440      596         -1000 systemd-udevd
2024-07-09T08:07:00.466412+08:00 orangepicm4 kernel: [118196.982010] [    583]     0   583    12402      275    90112      277          -250 systemd-journal
2024-07-09T08:07:00.466417+08:00 orangepicm4 kernel: [118196.982018] [    589]     0   589     2025        8    49152      769             0 haveged
2024-07-09T08:07:00.466421+08:00 orangepicm4 kernel: [118196.982025] [    598]   106   598     2125        0    53248      122             0 rpcbind
2024-07-09T08:07:00.466424+08:00 orangepicm4 kernel: [118196.982033] [    679]     0   679     1672       43    45056       55             0 cron
2024-07-09T08:07:00.466430+08:00 orangepicm4 kernel: [118196.982040] [    684]   100   684     2163      131    45056      155          -900 dbus-daemon
2024-07-09T08:07:00.466434+08:00 orangepicm4 kernel: [118196.982047] [    701]     0   701    55530        6    77824      403             0 rsyslogd
2024-07-09T08:07:00.466438+08:00 orangepicm4 kernel: [118196.982055] [    708]     0   708     6369        0    69632      311             0 systemd-logind
2024-07-09T08:07:00.466443+08:00 orangepicm4 kernel: [118196.982063] [    770]     0   770    65593        0   143360      807             0 NetworkManager
2024-07-09T08:07:00.466489+08:00 orangepicm4 kernel: [118196.982070] [    787]     0   787     4281       17    65536      361             0 wpa_supplicant
2024-07-09T08:07:00.466497+08:00 orangepicm4 kernel: [118196.982077] [    999]   987   999     2404        0    49152      203             0 ttyd
2024-07-09T08:07:00.466502+08:00 orangepicm4 kernel: [118196.982084] [   1005]     0  1005      551        2    36864       23             0 brcm_patchram_p
2024-07-09T08:07:00.466507+08:00 orangepicm4 kernel: [118196.982091] [   1016]     0  1016    28001        0   110592     2352             0 unattended-upgr
2024-07-09T08:07:00.466513+08:00 orangepicm4 kernel: [118196.982098] [   1017]   101  1017     1158       31    36864      132             0 vnstatd
2024-07-09T08:07:00.466518+08:00 orangepicm4 kernel: [118196.982106] [   1026]   102  1026     4825       24    49152      172             0 chronyd
2024-07-09T08:07:00.466522+08:00 orangepicm4 kernel: [118196.982112] [   1027]   102  1027     2777        1    49152      146             0 chronyd
2024-07-09T08:07:00.466535+08:00 orangepicm4 kernel: [118196.982120] [   1031]     0  1031     4083        0    73728      335         -1000 sshd
2024-07-09T08:07:00.466541+08:00 orangepicm4 kernel: [118196.982127] [   1036]   109  1036     3706        0    65536      138             0 dnsmasq
2024-07-09T08:07:00.466546+08:00 orangepicm4 kernel: [118196.982135] [   1161]     0  1161     3317        0    65536      151             0 bluetoothd
2024-07-09T08:07:00.466602+08:00 orangepicm4 kernel: [118196.982144] [   1638]     0  1638     1838        0    45056      122             0 login
2024-07-09T08:07:00.466611+08:00 orangepicm4 kernel: [118196.982151] [   1639]     0  1639     2592        0    57344      124             0 login
2024-07-09T08:07:00.466616+08:00 orangepicm4 kernel: [118196.982158] [   1866]  1000  1866     2029        2    53248      402             0 bash
2024-07-09T08:07:00.466620+08:00 orangepicm4 kernel: [118196.982167] [   1867]  1000  1867     2029        2    40960      401             0 bash
2024-07-09T08:07:00.466625+08:00 orangepicm4 kernel: [118196.982174] [   1880]     0  1880     4898        0    73728      492             0 sshd
2024-07-09T08:07:00.466630+08:00 orangepicm4 kernel: [118196.982181] [   2004]     0  2004     2215       38    53248      603             0 bash
2024-07-09T08:07:00.466634+08:00 orangepicm4 kernel: [118196.982188] [   2091]     0  2091     2712        0    49152      453             0 nginx
2024-07-09T08:07:00.466638+08:00 orangepicm4 kernel: [118196.982196] [   2092]   992  2092     2886       39    57344      593             0 nginx
2024-07-09T08:07:00.466642+08:00 orangepicm4 kernel: [118196.982203] [   2093]   992  2093     2850        0    57344      598             0 nginx
2024-07-09T08:07:00.466646+08:00 orangepicm4 kernel: [118196.982211] [   2094]   992  2094     2870       12    57344      625             0 nginx
2024-07-09T08:07:00.466649+08:00 orangepicm4 kernel: [118196.982218] [   2095]   992  2095     2865        0    57344      604             0 nginx
2024-07-09T08:07:00.466653+08:00 orangepicm4 kernel: [118196.982226] [ 146741]     0 146741     4898       30    69632      449             0 sshd
2024-07-09T08:07:00.466657+08:00 orangepicm4 kernel: [118196.982234] [ 146865]     0 146865     2127        1    49152      508             0 bash
2024-07-09T08:07:00.466697+08:00 orangepicm4 kernel: [118196.982243] [ 270360]     0 270360     4865        0    86016      467             0 sshd
2024-07-09T08:07:00.466705+08:00 orangepicm4 kernel: [118196.982250] [ 270484]     0 270484     2028        1    45056      403             0 bash
2024-07-09T08:07:00.466710+08:00 orangepicm4 kernel: [118196.982257] [ 270492]     0 270492     2921       55    53248      287             0 htop
2024-07-09T08:07:00.466714+08:00 orangepicm4 kernel: [118196.982265] [ 642767]     0 642767     1308        6    45056       19             0 tail
2024-07-09T08:07:00.466718+08:00 orangepicm4 kernel: [118196.982271] [ 648922]   991 648922   252166        0   237568     2038             0 janus
2024-07-09T08:07:00.466722+08:00 orangepicm4 kernel: [118196.982280] [ 654936]   996 654936   254312      272   348160     8579             0 kvmd/main: /usr
2024-07-09T08:07:00.466728+08:00 orangepicm4 kernel: [118196.982287] [ 654949]   996 654949    69371      139   249856     8227             0 kvmd/hid-keyboa
2024-07-09T08:07:00.466733+08:00 orangepicm4 kernel: [118196.982294] [ 654950]   996 654950    69371      240   249856     8207             0 kvmd/hid-mouse:
2024-07-09T08:07:00.466737+08:00 orangepicm4 kernel: [118196.982310] [ 695308]   996 695308   774931    14889   794624     1993             0 main
2024-07-09T08:07:00.466776+08:00 orangepicm4 kernel: [118196.982319] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/system.slice/kvmd.service,task=main,pid=695308,uid=996
2024-07-09T08:07:00.466786+08:00 orangepicm4 kernel: [118196.983102] Out of memory: Killed process 695308 (main) total-vm:3099724kB, anon-rss:0kB, file-rss:18792kB, shmem-rss:40764kB, UID:996 pgtables:776kB oom_score_adj:0
2024-07-09T08:07:00.466818+08:00 orangepicm4 kernel: [118196.988076] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466902+08:00 orangepicm4 kernel: [118196.991204] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466909+08:00 orangepicm4 kernel: [118196.991740] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466914+08:00 orangepicm4 kernel: [118196.995069] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466918+08:00 orangepicm4 kernel: [118196.995599] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466922+08:00 orangepicm4 kernel: [118196.996113] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466927+08:00 orangepicm4 kernel: [118196.997017] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466931+08:00 orangepicm4 kernel: [118196.997927] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466935+08:00 orangepicm4 kernel: [118196.998630] mali fde60000.gpu: OOM notifier: dev mali0  0 kB
2024-07-09T08:07:00.466938+08:00 orangepicm4 kernel: [118197.005734] oom_reaper: reaped process 695308 (main), now anon-rss:0kB, file-rss:20400kB, shmem-rss:40764kB
2024-07-09T08:07:00.703819+08:00 orangepicm4 mpp[695308]: mpp_info: mpp version: c145c84 author: Rimon Xu       2023-02-10 [h264d]: check frame slot index when need to combine frame
2024-07-09T08:07:00.706004+08:00 orangepicm4 systemd[1]: kvmd.service: A process of this unit has been killed by the OOM killer.
2024-07-09T08:07:00.706552+08:00 orangepicm4 mpp[695308]: mpp_enc: MPP_ENC_SET_RC_CFG bps 7776000 [7290000 : 8262000] fps [30:30] gop 30
2024-07-09T08:07:00.706769+08:00 orangepicm4 mpp[695308]: jpege_api_v2: setup quant 8 change mode cbr fixqp
2024-07-09T08:07:00.758220+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.463    stream] -- Requested 5 device buffers, got 5
2024-07-09T08:07:00.771670+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.564    stream] -- Capturing started
2024-07-09T08:07:00.772991+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118190.564    stream] -- Switching to MPP encoder ...
2024-07-09T08:07:00.794730+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118191.407    stream] -- Using JPEG quality: 80%
2024-07-09T08:07:00.795236+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer           INFO --- => -- INFO  [118191.506    stream] -- Creating pool JPEG with 1 workers ...
2024-07-09T08:07:00.804886+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.server             INFO --- Waiting short tasks ...
2024-07-09T08:07:00.807431+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.server             INFO --- Stopping system tasks ...
2024-07-09T08:07:01.371377+08:00 orangepicm4 kernel: [118198.057328] rkisp-vir0: rkisp_stream_stop id:0 timeout
2024-07-09T08:07:01.388059+08:00 orangepicm4 kernel: [118198.074812] rockchip-csi2-dphy csi2-dphy0: csi2_dphy_s_stream_stop stream stop, dphy0
2024-07-09T08:07:01.388136+08:00 orangepicm4 kernel: [118198.074829] rockchip-csi2-dphy csi2-dphy0: csi2_dphy_s_stream stream on:0, dphy0, ret 0
2024-07-09T08:07:01.460072+08:00 orangepicm4 kvmd[654936]: kvmd.apps.kvmd.streamer          ERROR --- Unexpected streamer error: pid=695308
2024-07-09T08:07:01.460420+08:00 orangepicm4 kvmd[654936]: Traceback (most recent call last):
2024-07-09T08:07:01.460601+08:00 orangepicm4 kvmd[654936]:   File "/usr/lib/python3/dist-packages/kvmd/apps/kvmd/streamer.py", line 449, in __streamer_task_loop
2024-07-09T08:07:01.460700+08:00 orangepicm4 kvmd[654936]:     raise RuntimeError("Streamer unexpectedly died")
2024-07-09T08:07:01.460791+08:00 orangepicm4 kvmd[654936]: RuntimeError: Streamer unexpectedly died
datrixKvm commented 1 month ago

The project runs fine on rk3568. Please use the project configuration for testing first. If it still doesn't work, consider whether there is a problem with the kernel.

floydelcy commented 1 month ago

run with --encoder=mpp --resolution=1920x1080 in gdb and unpluged the hdmi streamer will create two New Threads LWP 18387(us_mpp_jpeg_encoder_init in encoder.c) and LWP 18388(worker pool),but it only destoryed LWP 18388 Thread when ERROR ,and it will increase the memory usage about 16M in each polling.

================================================================================
-- INFO  [2671.418    stream] -- Device fd=9 opened
-- INFO  [2671.418    stream] -- Using resolution: 1920x1080
-- INFO  [2671.418    stream] -- Using format: UYVY
-- INFO  [2671.418    stream] -- Querying HW FPS changing is not supported
-- INFO  [2671.418    stream] -- Using IO method: MMAP
-- INFO  [2671.430    stream] -- Requested 5 device buffers, got 5
-- INFO  [2671.455    stream] -- Capturing started
-- INFO  [2671.456    stream] -- Switching to MPP encoder ...
`[New Thread 0x7fef4edd60 (LWP 18387)]`
-- INFO  [2671.466    stream] -- Using JPEG quality: 80%
-- INFO  [2671.466    stream] -- Creating pool JPEG with 1 workers ...
`New Thread 0x7feecddd60 (LWP 18388)]`
-- INFO  [2671.468    stream] -- Capturing ...
-- ERROR [2672.469    stream] -- Mainloop select() error: Inappropriate ioctl for device
-- INFO  [2672.469    stream] -- Destroying workers pool JPEG ...
`[Thread 0x7feecddd60 (LWP 18388) exited]`
-- INFO  [2673.016    stream] -- Capturing stopped
-- INFO  [2673.022    stream] -- Device fd=9 closed
================================================================================
-- INFO  [2673.024    stream] -- Device fd=9 opened
-- INFO  [2673.024    stream] -- Using resolution: 1920x1080
-- INFO  [2673.024    stream] -- Using format: UYVY
-- INFO  [2673.024    stream] -- Querying HW FPS changing is not supported
-- INFO  [2673.024    stream] -- Using IO method: MMAP
-- INFO  [2673.029    stream] -- Requested 5 device buffers, got 5
-- INFO  [2673.040    stream] -- Capturing started
-- INFO  [2673.040    stream] -- Switching to MPP encoder ...
[New Thread 0x7feecddd60 (LWP 18389)]
-- INFO  [2673.044    stream] -- Using JPEG quality: 80%
-- INFO  [2673.044    stream] -- Creating pool JPEG with 1 workers ...
[New Thread 0x7fee4cdd60 (LWP 18390)]
-- INFO  [2673.046    stream] -- Capturing ...
-- ERROR [2674.047    stream] -- Mainloop select() error: Inappropriate ioctl for device
-- INFO  [2674.047    stream] -- Destroying workers pool JPEG ...
[Thread 0x7fee4cdd60 (LWP 18390) exited]
-- INFO  [2674.599    stream] -- Capturing stopped
-- INFO  [2674.622    stream] -- Device fd=9 closed
================================================================================
datrixKvm commented 1 month ago

Maybe you can refer to here https://github.com/pikvm/ustreamer/issues?q=Mainloop+select%28%29+error%3A+Inappropriate+ioctl+for+device

floydelcy commented 1 month ago

Inappropriate ioctl for device is not the keypoint that is caused by unpluged the HDMI cable or HDMI no signal ,the keyponit is memory leaking in that situation.

if (type == US_ENCODER_TYPE_MPP) {
    US_LOG_INFO("Switching to MPP encoder ...");
    _ER(mpp) = us_mpp_jpeg_encoder_init(dev->width, dev->height, MPP_FMT_YUV422_UYVY, 30, quality);
    n_workers = 1;
}