Below one allows you to scroll through the kernel ring buffer/logs while at same time highlighting any "oom" messages:
dmesg -T | less -p oom
Typically you'll see something like below when the oom-killer
is killing some process:
[Thu Sep 17 10:58:29 2020] nmbd invoked oom-killer: gfp_mask=0x100cca(GFP_HIGHUSER_MOVABLE), order=0, oom_score_adj=0
[Thu Sep 17 10:58:29 2020] CPU: 1 PID: 2154 Comm: nmbd Tainted: G C 5.4.27+ #1
[Thu Sep 17 10:58:29 2020] Hardware name: BCM2835
[Thu Sep 17 10:58:29 2020] Backtrace:
[Thu Sep 17 10:58:29 2020] [<c020e09c>] (dump_backtrace) from [<c020e398>] (show_stack+0x20/0x24)
[Thu Sep 17 10:58:29 2020] r6:c12a6538 r5:c12a6538 r4:00000000 r3:1771de1a
[Thu Sep 17 10:58:29 2020] [<c020e378>] (show_stack) from [<c0b2e348>] (dump_stack+0xd8/0x11c)
[Thu Sep 17 10:58:29 2020] [<c0b2e270>] (dump_stack) from [<c0354760>] (dump_header+0x68/0x21c)
[Thu Sep 17 10:58:29 2020] r8:c12a8940 r7:c0df284c r6:e2269080 r5:cf07eac0 r4:e20b1d40 r3:1771de1a
[Thu Sep 17 10:58:29 2020] [<c03546f8>] (dump_header) from [<c0354e24>] (oom_kill_process+0x15c/0x1a4)
[Thu Sep 17 10:58:29 2020] r9:c12056d0 r8:c12a8940 r7:c0df284c r6:e20b1d40 r5:cf07f02c r4:cf07eac0
[Thu Sep 17 10:58:29 2020] [<c0354cc8>] (oom_kill_process) from [<c0355a18>] (out_of_memory+0x120/0x348)
And I wouldnt rule out the power adapter or cable just bc it came in a kit.
The power adapter or cable could be DOA/DFS or just a cheap one not able to do the job.
(Dead On Arrival / Defect From Stock)
That same kernel ring buffer can be checked for "under-voltage
" messages:
dmesg -T | grep -i voltage
Or checking the logs stored on the SD card that go longer back (the kernel ring buffer stored in RAM gets wiped on reboot):
zgrep -ni voltage /var/log/syslog.*
And I wouldnt rule out filesystem errors caused by power outage or insufficient or unstable power: