Re: [PATCH 1/2] completion: move blk_wait_io to kernel/sched/completion.c

From: Jens Axboe
Date: Thu Apr 18 2024 - 10:37:48 EST


On 4/17/24 10:57 PM, Christoph Hellwig wrote:
> On Wed, Apr 17, 2024 at 08:00:22PM +0200, Mikulas Patocka wrote:
>>>> +EXPORT_SYMBOL(wait_for_completion_long_io);
>>>
>>> Urgh, why is it a sane thing to circumvent the hang check timer?
>>
>> The block layer already does it - the bios can have arbitrary size, so
>> waiting for them takes arbitrary time.
>
> And as mentioned the last few times around, I think we want a task
> state to say that task can sleep long or even forever and not propagate
> this hack even further.

It certainly is a hack/work-around, but unless there are a lot more that
should be using something like this, I don't think adding extra core
complexity in terms of a special task state (or per-task flag, at least
that would be easier) is really warranted.

--
Jens Axboe