Messages in this thread | | | Date | Wed, 19 Aug 2020 15:28:31 +0200 | From | David Sterba <> | Subject | Re: [PATCH] btrfs: prevent hung check firing during long sync IO |
| |
On Wed, Aug 19, 2020 at 06:14:51PM +0800, Xianting Tian wrote: > For sync and flush io, it may take long time to complete. > So it's better to use wait_for_completion_io_timeout() in a > while loop to avoid prevent hung check and crash(when set > /proc/sys/kernel/hung_task_panic).
I wonder if long running IO should trigger the panic/kill of the task at all. A warning means that the system is under load but as long as it's making some progress it should be ok, and that seems to be a separate case from a task that's not making any progress (and terminating it is probably the best option).
> This is similar to prevent hung task check in submit_bio_wait(), > blk_execute_rq().
I see, adding that workaround to btrfs would be 3rd occurence and this should go into a wrapper, eg. wait_for_completion_io_nowarn with examples where this should be used.
| |