JeffyCN / mirrors

Mirrors of Rockchip BSP repositories, only contains yocto related ones to keep it thin since the yocto would try to clone the whole repository.
Other
13 stars 5 forks source link

Out of memory (GST Rockchipmpp) #16

Closed bluesky2319 closed 8 months ago

bluesky2319 commented 8 months ago

Hello. I upgraded the Rockchip GStreamer library in NanoPi R6C Debian 11 (5.10.160), but it crashed when I ran my transcoding app. I have a question: Is there any requirement for updating the lib (libgstrockchipmpp.so)? And how can I resolve the issue?

Also, my app was developed based on the previous version (2021), and it works based on that lib, but because of some errors that I saw in the system log, I wanted to upgrade it to the latest version:

This is the issue after updating the new lib (libgstrockchipmpp): rga_api: 1.9.1 rga_driver: 1.2.26

Dec 13 16:29:56 NanoPi-R6C kernel: mali fb000000.gpu: OOM notifier: dev mali0  35564 kB
Dec 13 16:29:56 NanoPi-R6C kernel: mali fb000000.gpu: OOM notifier: tsk Xorg  tgid (771)  pid (771) 35532 kB
Dec 13 16:29:56 NanoPi-R6C kernel: stamp thread invoked oom-killer: gfp_mask=0x1100cca(GFP_HIGHUSER_MOVABLE), order=0, oom_score_adj=0
Dec 13 16:29:56 NanoPi-R6C kernel: CPU: 5 PID: 2072 Comm: stamp thread Tainted: G           O      5.10.160 #194
Dec 13 16:29:56 NanoPi-R6C kernel: Hardware name: FriendlyElec NanoPi R6C (DT)
Dec 13 16:29:56 NanoPi-R6C kernel: Call trace:
Dec 13 16:29:56 NanoPi-R6C kernel:  dump_backtrace+0x0/0x1d0
Dec 13 16:29:56 NanoPi-R6C kernel:  show_stack+0x1c/0x24
Dec 13 16:29:56 NanoPi-R6C kernel:  dump_stack_lvl+0xc8/0xec
Dec 13 16:29:56 NanoPi-R6C kernel:  dump_stack+0x14/0x50
Dec 13 16:29:56 NanoPi-R6C kernel:  dump_header+0x4c/0x1ec
Dec 13 16:29:56 NanoPi-R6C kernel:  oom_kill_process+0x1c0/0x1c4
Dec 13 16:29:56 NanoPi-R6C kernel:  out_of_memory+0x1e0/0x414
Dec 13 16:29:56 NanoPi-R6C kernel:  __alloc_pages_may_oom+0x114/0x190
Dec 13 16:29:56 NanoPi-R6C kernel:  __alloc_pages_nodemask+0x984/0xcac
Dec 13 16:29:56 NanoPi-R6C kernel:  pagecache_get_page+0x1b4/0x384
Dec 13 16:29:56 NanoPi-R6C kernel:  filemap_fault+0x6ec/0x940
Dec 13 16:29:56 NanoPi-R6C kernel:  ext4_filemap_fault+0x38/0x900
Dec 13 16:29:56 NanoPi-R6C kernel:  __do_fault+0x40/0x160
Dec 13 16:29:56 NanoPi-R6C kernel:  handle_pte_fault+0x8b4/0xdc0
Dec 13 16:29:56 NanoPi-R6C kernel:  __handle_mm_fault+0x10c/0x2d0
Dec 13 16:29:56 NanoPi-R6C kernel:  handle_mm_fault+0xc4/0x234
Dec 13 16:29:56 NanoPi-R6C kernel:  do_page_fault+0x2b8/0x4c0
Dec 13 16:29:56 NanoPi-R6C kernel:  do_translation_fault+0xac/0xc0
Dec 13 16:29:56 NanoPi-R6C kernel:  do_mem_abort+0x44/0xb0
Dec 13 16:29:56 NanoPi-R6C kernel:  el0_ia+0x68/0xac
Dec 13 16:29:56 NanoPi-R6C kernel:  el0_sync_handler+0x11c/0x120
Dec 13 16:29:56 NanoPi-R6C kernel:  el0_sync+0x15c/0x180
Dec 13 16:29:56 NanoPi-R6C kernel: Mem-Info:
Dec 13 16:29:56 NanoPi-R6C kernel: active_anon:221 inactive_anon:873839 isolated_anon:0
                                    active_file:111 inactive_file:57 isolated_file:0
                                    unevictable:805 dirty:0 writeback:0
                                    slab_reclaimable:10933 slab_unreclaimable:12498
                                    mapped:273 shmem:1520 pagetables:3774 bounce:0
                                    free:19107 free_pcp:419 free_cma:0
Dec 13 16:29:56 NanoPi-R6C kernel: Node 0 active_anon:884kB inactive_anon:3495356kB active_file:444kB inactive_file:228kB unevictable:3220kB isolated(anon):0kB isolated(file):0kB mapped:1092kB dirty:0kB writeback:0kB shmem:6080kB shmem_thp: 0kB shmem_pmdmapped: 0kB anon_thp: 0kB writeback_tmp:0kB kernel_stack:7088kB all_unreclaimable? no
Dec 13 16:29:56 NanoPi-R6C kernel: DMA free:70852kB min:70396kB low:87992kB high:105588kB reserved_highatomic:0KB active_anon:264kB inactive_anon:3406488kB active_file:100kB inactive_file:0kB unevictable:3200kB writepending:0kB present:3913728kB managed:3815692kB mlocked:64kB pagetables:13580kB bounce:0kB free_pcp:1412kB local_pcp:248kB free_cma:0kB
Dec 13 16:29:56 NanoPi-R6C kernel: lowmem_reserve[]: 0 0 175 175
Dec 13 16:29:56 NanoPi-R6C kernel: Normal free:5576kB min:3328kB low:4160kB high:4992kB reserved_highatomic:0KB active_anon:620kB inactive_anon:88868kB active_file:252kB inactive_file:104kB unevictable:20kB writepending:0kB present:262144kB managed:179836kB mlocked:0kB pagetables:1516kB bounce:0kB free_pcp:264kB local_pcp:76kB free_cma:0kB
Dec 13 16:29:56 NanoPi-R6C kernel: lowmem_reserve[]: 0 0 0 0
Dec 13 16:29:56 NanoPi-R6C kernel: DMA: 394*4kB (UME) 299*8kB (UME) 271*16kB (UE) 248*32kB (UME) 129*64kB (UE) 63*128kB (UE) 39*256kB (UE) 25*512kB (UME) 10*1024kB (UME) 2*2048kB (U) 0*4096kB = 69680kB
Dec 13 16:29:56 NanoPi-R6C kernel: Normal: 363*4kB (U) 304*8kB (UE) 61*16kB (UE) 20*32kB (U) 0*64kB 0*128kB 0*256kB 0*512kB 0*1024kB 0*2048kB 0*4096kB = 5500kB
Dec 13 16:29:56 NanoPi-R6C kernel: Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=1048576kB
Dec 13 16:29:56 NanoPi-R6C kernel: Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=32768kB
Dec 13 16:29:56 NanoPi-R6C kernel: Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=2048kB
Dec 13 16:29:56 NanoPi-R6C kernel: Node 0 hugepages_total=0 hugepages_free=0 hugepages_surp=0 hugepages_size=64kB
Dec 13 16:29:56 NanoPi-R6C kernel: 1682 total pagecache pages
Dec 13 16:29:56 NanoPi-R6C kernel: 0 pages in swap cache
Dec 13 16:29:56 NanoPi-R6C kernel: Swap cache stats: add 0, delete 0, find 0/0
Dec 13 16:29:56 NanoPi-R6C kernel: Free swap  = 0kB
Dec 13 16:29:56 NanoPi-R6C kernel: Total swap = 0kB
Dec 13 16:29:56 NanoPi-R6C kernel: 1043968 pages RAM
Dec 13 16:29:56 NanoPi-R6C kernel: 0 pages HighMem/MovableOnly
Dec 13 16:29:56 NanoPi-R6C kernel: 45086 pages reserved
Dec 13 16:29:56 NanoPi-R6C kernel: 2048 pages cma reserved
Dec 13 16:29:56 NanoPi-R6C kernel: Tasks state (memory values in pages):
Dec 13 16:29:56 NanoPi-R6C kernel: [  pid  ]   uid  tgid total_vm      rss pgtables_bytes swapents oom_score_adj name
Dec 13 16:29:56 NanoPi-R6C kernel: [    225]     0   225      206        1    28672        0             0 bpfilter_umh
Dec 13 16:29:56 NanoPi-R6C kernel: [    377]     0   377    16376      281    98304        0          -250 systemd-journal
Dec 13 16:29:56 NanoPi-R6C kernel: [    421]     0   421     5077      390    57344        0         -1000 systemd-udevd
Dec 13 16:29:56 NanoPi-R6C kernel: [    582]     0   582      495       15    36864        0             0 acpid
Dec 13 16:29:56 NanoPi-R6C kernel: [    587]   104   587     2161      304    49152        0          -900 dbus-daemon
Dec 13 16:29:56 NanoPi-R6C kernel: [    593]     0   593    63496      602   122880        0             0 NetworkManager
Dec 13 16:29:56 NanoPi-R6C kernel: [    600]     0   600    55219      349    77824        0             0 rsyslogd
Dec 13 16:29:56 NanoPi-R6C kernel: [    602]     0   602     3636      210    57344        0             0 systemd-logind
Dec 13 16:29:56 NanoPi-R6C kernel: [    604]     0   604     1369       57    40960        0             0 thd
Dec 13 16:29:56 NanoPi-R6C kernel: [    605]     0   605    97338      526   114688        0             0 udisksd
Dec 13 16:29:56 NanoPi-R6C kernel: [    606]     0   606     3391      165    61440        0             0 wpa_supplicant
Dec 13 16:29:56 NanoPi-R6C kernel: [    719]     0   719    58817      534    90112        0             0 polkitd
Dec 13 16:29:56 NanoPi-R6C kernel: [    725]     0   725     2543      102    49152        0             0 lcd2usb_print
Dec 13 16:29:56 NanoPi-R6C kernel: [    736]     0   736     1520       90    45056        0             0 starter
Dec 13 16:29:56 NanoPi-R6C kernel: [    750]     0   750      624       26    36864        0             0 agetty
Dec 13 16:29:56 NanoPi-R6C kernel: [    752]     0   752    76615      234    81920        0             0 lightdm
Dec 13 16:29:56 NanoPi-R6C kernel: [    753]     0   753     1005       29    32768        0             0 agetty
Dec 13 16:29:56 NanoPi-R6C kernel: [    771]     0   771   878217    19766  1052672        0             0 Xorg
Dec 13 16:29:56 NanoPi-R6C kernel: [    772]     0   772      513       27    36864        0             0 xl2tpd
Dec 13 16:29:56 NanoPi-R6C kernel: [    775]     0   775     3405      238    57344        0         -1000 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [    798]     0   798   297689      214   192512        0             0 charon
Dec 13 16:29:56 NanoPi-R6C kernel: [    903]     0   903      514       45    32768        0             0 usbdevice
Dec 13 16:29:56 NanoPi-R6C kernel: [    905]     0   905     2579        1    40960        0             0 adbd
Dec 13 16:29:56 NanoPi-R6C kernel: [    980]     0   980    40894      257    73728        0             0 lightdm
Dec 13 16:29:56 NanoPi-R6C kernel: [    985]  1000   985     4041      361    53248        0             0 systemd
Dec 13 16:29:56 NanoPi-R6C kernel: [    986]  1000   986    42129      711    90112        0             0 (sd-pam)
Dec 13 16:29:56 NanoPi-R6C kernel: [    999]  1000   999   134645     1440   229376        0             0 pulseaudio
Dec 13 16:29:56 NanoPi-R6C kernel: [   1002]  1000  1002   466013     3175   499712        0             0 xfce4-session
Dec 13 16:29:56 NanoPi-R6C kernel: [   1041]  1000  1041     2018      114    40960        0             0 dbus-launch
Dec 13 16:29:56 NanoPi-R6C kernel: [   1042]  1000  1042     2031      197    49152        0             0 dbus-daemon
Dec 13 16:29:56 NanoPi-R6C kernel: [   1057]  1000  1057     1358      115    32768        0             0 ssh-agent
Dec 13 16:29:56 NanoPi-R6C kernel: [   1069]     0  1069     3103      132    53248        0             0 bluetoothd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1150]  1000  1150    57626      199    73728        0             0 xfconfd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1168]  1000  1168    19867       65    40960        0             0 gpg-agent
Dec 13 16:29:56 NanoPi-R6C kernel: [   1170]  1000  1170   458915     3980   548864        0             0 xfwm4
Dec 13 16:29:56 NanoPi-R6C kernel: [   1174]  1000  1174    59104      225    86016        0             0 gvfsd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1200]  1000  1200    56103     1316   155648        0             0 xfsettingsd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1203]     0  1203    61319      285    86016        0             0 upowerd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1216]  1000  1216    78574     2330   192512        0             0 xfce4-panel
Dec 13 16:29:56 NanoPi-R6C kernel: [   1220]  1000  1220    84456     1202   155648        0             0 Thunar
Dec 13 16:29:56 NanoPi-R6C kernel: [   1225]  1000  1225    81362     5077   208896        0             0 xfdesktop
Dec 13 16:29:56 NanoPi-R6C kernel: [   1229]  1000  1229   145897     2047   180224        0             0 tracker-miner-f
Dec 13 16:29:56 NanoPi-R6C kernel: [   1231]  1000  1231    46163      492   110592        0             0 polkit-gnome-au
Dec 13 16:29:56 NanoPi-R6C kernel: [   1232]  1000  1232   106869     2125   196608        0             0 nm-applet
Dec 13 16:29:56 NanoPi-R6C kernel: [   1242]  1000  1242    87167      500   114688        0             0 gvfs-udisks2-vo
Dec 13 16:29:56 NanoPi-R6C kernel: [   1246]  1000  1246    47335     1232   131072        0             0 xfce4-power-man
Dec 13 16:29:56 NanoPi-R6C kernel: [   1270]  1000  1270    77621      236    98304        0             0 gvfsd-trash
Dec 13 16:29:56 NanoPi-R6C kernel: [   1277]  1000  1277    39756      153    69632        0             0 gvfsd-metadata
Dec 13 16:29:56 NanoPi-R6C kernel: [   1284]  1000  1284    84255     1227   143360        0             0 panel-6-systray
Dec 13 16:29:56 NanoPi-R6C kernel: [   1285]  1000  1285   115714     1842   155648        0             0 panel-8-pulseau
Dec 13 16:29:56 NanoPi-R6C kernel: [   1298]  1000  1298    47839     1226   135168        0             0 panel-14-action
Dec 13 16:29:56 NanoPi-R6C kernel: [   1310]     0  1310     3990      298    57344        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1312]     0  1312     3991      298    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1318]  1000  1318     4076      348    57344        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1319]  1000  1319     1461      136    45056        0             0 bash
Dec 13 16:29:56 NanoPi-R6C kernel: [   1331]  1000  1331     3991      299    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1332]  1000  1332     1340      114    45056        0             0 sftp-server
Dec 13 16:29:56 NanoPi-R6C kernel: [   1354]     0  1354     3991      299    69632        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1356]     0  1356     3991      300    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1362]  1000  1362     4076      320    69632        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1365]  1000  1365     1461      135    45056        0             0 bash
Dec 13 16:29:56 NanoPi-R6C kernel: [   1374]  1000  1374     3991      301    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1375]  1000  1375     1340      114    40960        0             0 sftp-server
Dec 13 16:29:56 NanoPi-R6C kernel: [   1385]     0  1385     3991      299    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1387]     0  1387     3991      299    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1392]  1000  1392     4076      334    65536        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1396]  1000  1396     1461      136    40960        0             0 bash
Dec 13 16:29:56 NanoPi-R6C kernel: [   1405]  1000  1405     3991      300    61440        0             0 sshd
Dec 13 16:29:56 NanoPi-R6C kernel: [   1406]  1000  1406     1340      114    40960        0             0 sftp-server
Dec 13 16:29:56 NanoPi-R6C kernel: [   1776]   999  1776    22002      185    65536        0             0 systemd-timesyn
Dec 13 16:29:56 NanoPi-R6C kernel: [   1973]  1000  1973    20336      173   151552        0             0 journalctl
Dec 13 16:29:56 NanoPi-R6C kernel: [   2067]  1000  2067     2752      139    57344        0             0 sudo
Dec 13 16:29:56 NanoPi-R6C kernel: [   2068]     0  2068   188593      300   147456        0             0 MediaServer
Dec 13 16:29:56 NanoPi-R6C kernel: [   2223]  1000  2223     1985      103    49152        0             0 dbus-launch
Dec 13 16:29:56 NanoPi-R6C kernel: [   2224]  1000  2224     1920       93    45056        0             0 dbus-daemon
Dec 13 16:29:56 NanoPi-R6C kernel: [   3192]     0  3192      581       15    32768        0             0 anacron
Dec 13 16:29:56 NanoPi-R6C kernel: [   3203]  1000  3203   108180     2936   167936        0             0 tracker-store
Dec 13 16:29:56 NanoPi-R6C kernel: [   3292]  1000  3292     1360       69    40960        0             0 bash
Dec 13 16:29:56 NanoPi-R6C kernel: [   3297]  1000  3297  1357792   817803  7102464        0             0 demo
Dec 13 16:29:56 NanoPi-R6C kernel: oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-1000.slice/session-3.scope,task=demo,pid=3297,uid=1000
Dec 13 16:29:56 NanoPi-R6C kernel: Out of memory: Killed process 3297 (demo) total-vm:5431168kB, anon-rss:3271208kB, file-rss:0kB, shmem-rss:4kB, UID:1000 pgtables:6936kB oom_score_adj:0
Dec 13 16:29:56 NanoPi-R6C kernel: oom_reaper: reaped process 3297 (demo), now anon-rss:0kB, file-rss:0kB, shmem-rss:4kB
Dec 13 16:30:20 NanoPi-R6C org.freedesktop.Tracker1[3203]: OK
Out of memory: Killed processDec 13 16:34:35 NanoPi-R6C anacron[3192]: Job `cron.daily' started
JeffyCN commented 8 months ago

maybe try to upgrade all related packages, or maybe try to git bisect and locate the related commit

bluesky2319 commented 8 months ago

Thank you for your reply. Which packages should I upgrade to? Do I need to upgrade librockchip_mpp?

bluesky2319 commented 8 months ago

I need to consider these libs: image

JeffyCN commented 8 months ago

something like rockchipmpp/gst/kernel and sink related packages(xserver for xvimagesink, mali for glimagesink)

JeffyCN commented 8 months ago

or maybe you can git bisect to a specific commit

bluesky2319 commented 8 months ago

Sure, I will check them. Thank you

bluesky2319 commented 8 months ago

I checked it with the new update, and I have the same memory issue:

bbdffb706b8ec30f4677f26121b643b 6e7fec746ab97d41452dd304c3935a6 My application scenario is based on transcoding. As I mentioned in the previous version of libgstrockchipmpp (2021), I don't have this issue.

Also, I built the project and checked in two kernel versions, 5.10 and 6.1, in Debian 11; the result is the same. My system has already installed GStreamer version 1.18.5. I used these commands for building the project:

meson setup builddir
meson compile -C builddir

68b59de5bc6a019f7b734e9b5f1284e

Is there anything wrong with my build? In addition, after building the project and checking the lib, I saw the new parameter has an issue.

b3dac7f1362ebef6358cb96636c254b

JeffyCN commented 8 months ago

hmmm, that log just like the issue i fixed right now, please try to update

bluesky2319 commented 8 months ago

hmmm, that log just like the issue i fixed right now, please try to update

The issue has been fixed. Thank you for fixing it.