High io wait because of jbd2

I have a nas with nextcloud installed on linux debian, booted via a usb-stick (3.0).

I have high io wait times and found out it is because of jbd2.
When idling, no request are being made the are almost none journaling processes.
But when i make one request to nextcloud server, I get like a thousand output lines in “cat /sys/kernel/debug/tracing/trace_pipe”, when I enabled jbd2_run_stats and ext4_journal_start.

All from mysqld and apache2. I use MariaDB and I set sync_binlog=0. Still a lot of output.

Anyone ideas how to lower the jbd2 load.

Hi @tomvk

Just guessing… But it could be an issue with usb stick… USB Sticks are generally not made for for continuous write operations and high I/O loads.

Is everything installed on this stick? Web server, database, logs etc… If so, I would recommend using an SSD instead, because this stick is probably gonna die soon…

Little late, but indeed the low i/o speed of usb seemed to be the problem.
I fixed it with a SSD + clonezilla.

1 Like