Re: [PATCH v2 01/20] block: Add a flag for internal commands

Bart Van Assche
2021-11-22T17:38:45Z

On 11/22/21 12:46 AM, John Garry wrote:
> On 19/11/2021 19:57, Bart Van Assche wrote:
>> From: Hannes Reinecke <hare@suse.de> >
>> Some drivers use a single tag space for requests submitted by the block
>> layer and driver-internal requests. Driver-internal requests will never
>> pass through the block layer but require a valid tag. This patch adds a
>> new request flag REQ_INTERNAL.
>
> I'm not sure on the name. Don't we already use term "internal" for
> elevator request tag?

I don't see how any confusion could arise between "internal_tag" and
"REQ_INTERNAL" since in both cases the context is made clear - either
the request tag or the request in its entirety.

>> to mark such requests and a terminates any
>> such commands in blk_execute_rq_nowait() with a WARN_ON_ONCE() to signal
>> such an invalid usage.
>
> FYI, I have been working on a different stream, that allows us to send
> the reserved request through the block layer, as we need it for poll
> mode support. The reason is that we need to send reserved requests on
> specific HW queues, which may be polling. However poll mode support only
> allows us to poll requests with bios, so that's a problem ATM.

Please use REQ_OP_DRV_* without REQ_INTERNAL for requests that need to
be sent through the block layer.

Thanks,

Bart.