All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] block: Update blk_update_request() documentation
@ 2021-05-19 17:52 Bart Van Assche
  2021-06-03 20:03 ` Bart Van Assche
  2021-06-03 20:37 ` Jens Axboe
  0 siblings, 2 replies; 3+ messages in thread
From: Bart Van Assche @ 2021-05-19 17:52 UTC (permalink / raw)
  To: Jens Axboe
  Cc: linux-block, Christoph Hellwig, Bart Van Assche, Ming Lei,
	Hannes Reinecke

Although the original intent was to use blk_update_request() in stacking
block drivers only, it is used much more widely today. Reflect this in the
documentation block above this function. See also:
* commit 32fab448e5e8 ("block: add request update interface").
* commit 2e60e02297cf ("block: clean up request completion API").
* commit ed6565e73424 ("block: handle partial completions for special
  payload requests").

Cc: Christoph Hellwig <hch@lst.de>
Cc: Ming Lei <ming.lei@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
Signed-off-by: Bart Van Assche <bvanassche@acm.org>
---
 block/blk-core.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/block/blk-core.c b/block/blk-core.c
index 689aac2625d2..b65da5a33e20 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1385,26 +1385,22 @@ void blk_steal_bios(struct bio_list *list, struct request *rq)
 EXPORT_SYMBOL_GPL(blk_steal_bios);
 
 /**
- * blk_update_request - Special helper function for request stacking drivers
+ * blk_update_request - Complete multiple bytes without completing the request
  * @req:      the request being processed
  * @error:    block status code
- * @nr_bytes: number of bytes to complete @req
+ * @nr_bytes: number of bytes to complete for @req
  *
  * Description:
  *     Ends I/O on a number of bytes attached to @req, but doesn't complete
  *     the request structure even if @req doesn't have leftover.
  *     If @req has leftover, sets it up for the next range of segments.
  *
- *     This special helper function is only for request stacking drivers
- *     (e.g. request-based dm) so that they can handle partial completion.
- *     Actual device drivers should use blk_mq_end_request instead.
- *
  *     Passing the result of blk_rq_bytes() as @nr_bytes guarantees
  *     %false return from this function.
  *
  * Note:
- *	The RQF_SPECIAL_PAYLOAD flag is ignored on purpose in both
- *	blk_rq_bytes() and in blk_update_request().
+ *	The RQF_SPECIAL_PAYLOAD flag is ignored on purpose in this function
+ *      except in the consistency check at the end of this function.
  *
  * Return:
  *     %false - this request doesn't have any more data

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] block: Update blk_update_request() documentation
  2021-05-19 17:52 [PATCH] block: Update blk_update_request() documentation Bart Van Assche
@ 2021-06-03 20:03 ` Bart Van Assche
  2021-06-03 20:37 ` Jens Axboe
  1 sibling, 0 replies; 3+ messages in thread
From: Bart Van Assche @ 2021-06-03 20:03 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block, Christoph Hellwig, Ming Lei, Hannes Reinecke

On 5/19/21 10:52 AM, Bart Van Assche wrote:
> Although the original intent was to use blk_update_request() in stacking
> block drivers only, it is used much more widely today. Reflect this in the
> documentation block above this function. See also:
> * commit 32fab448e5e8 ("block: add request update interface").
> * commit 2e60e02297cf ("block: clean up request completion API").
> * commit ed6565e73424 ("block: handle partial completions for special
>   payload requests").

Can anyone help with reviewing this patch?

Thanks,

Bart.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] block: Update blk_update_request() documentation
  2021-05-19 17:52 [PATCH] block: Update blk_update_request() documentation Bart Van Assche
  2021-06-03 20:03 ` Bart Van Assche
@ 2021-06-03 20:37 ` Jens Axboe
  1 sibling, 0 replies; 3+ messages in thread
From: Jens Axboe @ 2021-06-03 20:37 UTC (permalink / raw)
  To: Bart Van Assche; +Cc: linux-block, Christoph Hellwig, Ming Lei, Hannes Reinecke

On 5/19/21 11:52 AM, Bart Van Assche wrote:
> Although the original intent was to use blk_update_request() in stacking
> block drivers only, it is used much more widely today. Reflect this in the
> documentation block above this function. See also:
> * commit 32fab448e5e8 ("block: add request update interface").
> * commit 2e60e02297cf ("block: clean up request completion API").
> * commit ed6565e73424 ("block: handle partial completions for special
>   payload requests").

Applied, thanks Bart.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-06-03 20:37 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-19 17:52 [PATCH] block: Update blk_update_request() documentation Bart Van Assche
2021-06-03 20:03 ` Bart Van Assche
2021-06-03 20:37 ` Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.