Re: [PATCH v2 01/20] block: Add a flag for internal commands
From: Bart Van Assche <bvanassche@acm.org>
Date: 2021-11-22 17:38:45
On 11/22/21 12:46 AM, John Garry wrote:
On 19/11/2021 19:57, Bart Van Assche wrote:quoted
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.
quoted
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.