The warning is not saying Pi-hole is causing the issue. Actually, there is no information related to which process caused the issue. It is just saying your machine had a load around 4.92, at 13:22:54.
I also noticed you are using DietPi.
I think DietPi deletes your logs hourly, so it will be harder to identify what was causing the issue at 13:22.
I'm not sure how and where atop stores the logs, but I think DietPi will remove every file from /var/log once an hour.
This load issue seems to be related to something else on the OS.
Maybe @MichaIng has a better suggestion on how to find DietPi logs pointing to the process causing the excessive load.
Ahhh so that's why atop can't read those logs. If everything gets deleted under /var/log there wasn't going to be any way for me to read them. I'll see if I disable the deletion of logs...
In the dietpi-software menu, there is also a logging option which stores the content of files to persistent disk, before clearing the /var/log tmpfs.
Probably system or kernel logs give a hint already?
journalctl
dmesg -T
Generally, on most modern Linux distributions, journalctl shows all system logs for a very long time, stored in an own longer-term tmpfs /run/log/journal. /var/log contains only either plain text duplicates of the journal, when rsyslog or something similar is installed, or logs from some particular other installed services. However, nowadays most server software packages ship with a native systemd service and log to the journal instead.
I assume this big CPU load would have to do with Internet activity. This is what I'm running at the moment (by the way, this started almost at the same time I went from Bullseye to Bookworm on my Orange Pi Zero):
Your logs show CPU stalls every ~3 minutes (sometimes longer), suspiciously often at the 21th second of the minute. At first I thought a cron job, but the journal does not show any cron job execution, but those start and finish quite clearly between the CPU stalls.
Before I change the microSD, I'll flash the armbian firmware and see if I can downgrade the kernel version to 6.1 (using the sudo armbian-config > System settings > Other option), since apparently for what I'm reading on those topics, it might actually be the cause of all this.
Yes, downgrading seems to solve it. However, better would be to fix it forwards. I am running a new kernel build based on latest Linux 6.6, so we can see whether this also solves it. Next would be to test latest stable Linux 6.8.
I'll check for sunxi related commits in the Armbian build system since the switch to Linux 6.6 when I find time, probably we find something, in case it is not an upstream issue.
cd /tmp
wget https://dietpi.com/downloads/binaries/testing/linux-{image,dtb}-current-sunxi.deb
dpkg -i linux-{image,dtb}-current-sunxi.deb
rm linux-{image,dtb}-current-sunxi.deb
reboot
I'm btw just installed Pi-hole on my NanoPi M1 (same SoC/kernel), and so far (with Linux 6.6.16) it works well, runs stable. Will let it run for a while and monitor CPU usage and kernel logs.
However, Orange Pi Zero (1) and NanoPi NEO (1) probably have more in common than NanoPi M1, form factor and first sight hardware features at least (aside of onboard WiFi).
Yes, if you are still running the DietPi image, just run these commands to update the kernel.
The Armbian image should suffer from the same issues, at least as long as not the CPU governor is relevant. So could be tested as well and verified that the issue really is the same, and then the kernel update tested similarly.
So, CPU load seem to be more normal now... But idle temperature is kind of high, around 60°C. So I guess I'll test with armbian-config for the downgrade for now.
I'll be checking in case I see up to date stable kernel versions.
None of the CPU stalls apparently, so that's good! And the CPU load graph definitely shows an improvement on the 15-min the moment I rebooted after testing this kernel.
But before the kernel upgrade, this device used to be around 49°C or so depending how hot it is. This temperature increase seems to be related to the kernel then, like on the Armbian thread...