Hi,
io_submit can block for many reasons -
https://stackoverflow.com/questions/34572559/asynchronous-io-io-submit-latency-in-ubuntu-linuxIn this case it appears to be an unaligned write e.g. writing to the 2nd 2K Informix page on a 4K ext4 block.
https://elixir.bootlin.com/linux/v4.18/source/fs/ext4/file.c#L247:* Unaligned direct AIO must be serialized among each other as zeroing
* of partial blocks of two competing unaligned AIOs can result in data
* corruption."
https://elixir.bootlin.com/linux/v4.18/source/fs/ext4/file.c#L106 ext4_unwritten_wait
This the calls schedule which then invokes the block unplugging mechanism
https://lwn.net/Articles/438256/i.e. have the process action all pending i/o's!
Looks like the device took 120s to action all the pending i/os.
From the comments it is unclear if it needs to submit or action the i/os!
You could have been hitting the limits in
https://stackoverflow.com/questions/34572559/asynchronous-io-io-submit-latency-in-ubuntu-linux item 4
/sys/block/[disk]/queue/nr_request
/sys/block/[disk]/device/queue_depth
or something else.
It is something for however supports your OS to look into.
You can also try the stuff in
https://tanelpoder.com/posts/11m-iops-with-10-ssds-on-amd-threadripper-pro-workstation/and use
- sudo psn -G syscall,wchan,kstack | sed 's/->/\n/g'
-
0x.tools / run_xcpu.sh runs perf record / sudo perf report -i
to get thread stack and see exactly where iin the kernel the time is being spent!
David.
------------------------------
David Williams
------------------------------
Original Message:
Sent: Tue March 08, 2022 04:14 AM
From: Hrvoje Zokovic
Subject: kernel: INFO: task oninit:1720 blocked for more than 120 seconds.
Anyone has experience/solution with this:
Feb 14 14:28:46 dbpri kernel: INFO: task oninit:1720 blocked for more than 120 seconds.
Feb 14 14:28:46 dbpri kernel: Not tainted 4.18.0-348.12.2.el8_5.x86_64 #1
Feb 14 14:28:46 dbpri kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
Feb 14 14:28:46 dbpri kernel: task:oninit state:D stack: 0 pid: 1720 ppid: 1714 flags:0x00000084
Feb 14 14:28:46 dbpri kernel: Call Trace:
Feb 14 14:28:46 dbpri kernel: __schedule+0x2bd/0x760
Feb 14 14:28:46 dbpri kernel: ? blk_flush_plug_list+0xd7/0x100
Feb 14 14:28:46 dbpri kernel: schedule+0x37/0xa0
Feb 14 14:28:46 dbpri kernel: ext4_unwritten_wait+0x83/0xb0 [ext4]
Feb 14 14:28:46 dbpri kernel: ? finish_wait+0x80/0x80
Feb 14 14:28:46 dbpri kernel: ext4_file_write_iter+0x392/0x3e0 [ext4]
Feb 14 14:28:46 dbpri kernel: aio_write+0xf6/0x1c0
Feb 14 14:28:46 dbpri kernel: ? blk_mq_sched_insert_requests+0x71/0xf0
Feb 14 14:28:46 dbpri kernel: ? io_submit_one+0x7e/0x3c0
Feb 14 14:28:46 dbpri kernel: ? kmem_cache_alloc+0x12e/0x270
Feb 14 14:28:46 dbpri kernel: io_submit_one+0x131/0x3c0
Feb 14 14:28:46 dbpri kernel: __x64_sys_io_submit+0xa2/0x180
Feb 14 14:28:46 dbpri kernel: ? syscall_trace_enter+0x1d3/0x2c0
Feb 14 14:28:46 dbpri kernel: do_syscall_64+0x5b/0x1a0
Feb 14 14:28:46 dbpri kernel: entry_SYSCALL_64_after_hwframe+0x65/0xca
Feb 14 14:28:46 dbpri kernel: RIP: 0033:0x7fbb9d46652d
Feb 14 14:28:46 dbpri kernel: Code: Unable to access opcode bytes at RIP 0x7fbb9d466503.
Feb 14 14:28:46 dbpri kernel: RSP: 002b:00000000500d7da8 EFLAGS: 00000246 ORIG_RAX: 00000000000000d1
Feb 14 14:28:46 dbpri kernel: RAX: ffffffffffffffda RBX: 00007fbb9ecf7280 RCX: 00007fbb9d46652d
Feb 14 14:28:46 dbpri kernel: RDX: 00000000500d7de8 RSI: 0000000000000001 RDI: 00007fbb98207000
Feb 14 14:28:46 dbpri kernel: RBP: 00007fbb98207000 R08: 0000000002229800 R09: 00000000538288d0
Feb 14 14:28:46 dbpri kernel: R10: ffffffffffffffe0 R11: 0000000000000246 R12: 0000000000000001
Feb 14 14:28:46 dbpri kernel: R13: 0000000000000000 R14: 00000000500d7de8 R15: 0000000053828850
It is Red Hat Enterprise Linux 8.5 (Ootpa)
Linux dbpri 4.18.0-348.12.2.el8_5.x86_64 #1 SMP Mon Jan 17 07:06:06 EST 2022 x86_64 x86_64 x86_64 GNU/Linux
I opened support case but no answer yet
Ofc I do not want to disable this message :)
Hrvoje
------------------------------
Hrvoje Zokovic
------------------------------
#Informix