public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH V2 0/2] block: try to make aligned bio in case of big chunk IO
@ 2023-11-09  8:28 Ming Lei
  2023-11-09  8:28 ` [PATCH V2 1/2] block: don't call into iov_iter_revert if nothing is left Ming Lei
  2023-11-09  8:28 ` [PATCH V2 2/2] block: try to make aligned bio in case of big chunk IO Ming Lei
  0 siblings, 2 replies; 6+ messages in thread
From: Ming Lei @ 2023-11-09  8:28 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block, Christoph Hellwig, Ed Tsai, Ming Lei

Hello,

The 1st adds check to avoid to call into iov_iter_revert() with zero
'unroll'.

The 2nd patch improves big chunk sequential IO performance by aligning
bio with max io size.

V2:
	- add patch 1/2
	- add 'max_size' hint to iov_iter_extract_pages() so that bio/iov
	  iter revert can be minimized, as suggested by Christoph

BTW, the check on 'bio->bi_bdev' isn't removed because there are more
such patterns(P2PDMA, block size check) in __bio_iov_iter_get_pages(),
and we need to audit that bio->bi_bdev is really non-NULL first, so it
shouldn't be part of this patchset

Ming Lei (2):
  block: don't call into iov_iter_revert if nothing is left
  block: try to make aligned bio in case of big chunk IO

 block/bio.c            | 126 +++++++++++++++++++++++++++++++++++++++--
 include/linux/blkdev.h |   5 ++
 2 files changed, 125 insertions(+), 6 deletions(-)

-- 
2.41.0


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

end of thread, other threads:[~2023-11-09 19:31 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-09  8:28 [PATCH V2 0/2] block: try to make aligned bio in case of big chunk IO Ming Lei
2023-11-09  8:28 ` [PATCH V2 1/2] block: don't call into iov_iter_revert if nothing is left Ming Lei
2023-11-09 14:35   ` Christoph Hellwig
2023-11-09  8:28 ` [PATCH V2 2/2] block: try to make aligned bio in case of big chunk IO Ming Lei
2023-11-09 14:39   ` Christoph Hellwig
2023-11-09 19:30   ` kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox