ceph-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* switch the block layer to use kmap_local_page v3
@ 2021-07-27  5:56 Christoph Hellwig
  2021-07-27  5:56 ` [PATCH 01/15] MIPS: don't include <linux/genhd.h> in <asm/mach-rc32434/rb.h> Christoph Hellwig
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: Christoph Hellwig @ 2021-07-27  5:56 UTC (permalink / raw)
  To: Jens Axboe, Thomas Gleixner
  Cc: Thomas Bogendoerfer, Andrew Morton, Geoff Levand, Ilya Dryomov,
	Dongsheng Yang, Mike Snitzer, James E.J. Bottomley, Ira Weiny,
	dm-devel, linux-mips, linux-kernel, linux-block, linuxppc-dev,
	ceph-devel, linux-arch

Hi all,

this series switches the core block layer code and all users of the
existing bvec kmap helpers to use kmap_local_page.  Drivers that
currently use open coded kmap_atomic calls will converted in a follow
on series.

To do so a new kunmap variant is added that calls
flush_kernel_dcache_page.  I'm not entirely sure where to call
flush_dcache_page vs flush_kernel_dcache_page, so I've tried to follow
the documentation here, but additional feedback would be welcome.

Note that the ps3disk has a minir conflict with the
flush_kernel_dcache_page removal in linux-next through the -mm tree.
I had hoped that change would go into 5.14, but it seems like it is
being held for 5.15.

Changes since v2:
 - rely on the flush_dcache_helpers in memcpy_to_page and memzero_page
   that now hit mainline

Changes since v1:
 - add more/better comments
 - add a new kunmap_local_dirty helper to feal with
   flush(_kernel)_dcache_page

Diffstat:
 arch/mips/include/asm/mach-rc32434/rb.h |    2 -
 block/bio-integrity.c                   |   14 +++-----
 block/bio.c                             |   37 ++++++----------------
 block/blk-map.c                         |    2 -
 block/bounce.c                          |   39 +++++-------------------
 block/t10-pi.c                          |   16 +++------
 drivers/block/ps3disk.c                 |   19 +----------
 drivers/block/rbd.c                     |   15 +--------
 drivers/md/dm-writecache.c              |    5 +--
 include/linux/bio.h                     |   42 -------------------------
 include/linux/bvec.h                    |   52 ++++++++++++++++++++++++++++++--
 include/linux/highmem-internal.h        |    7 ++++
 include/linux/highmem.h                 |   10 ++++--
 13 files changed, 102 insertions(+), 158 deletions(-)

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

end of thread, other threads:[~2021-07-28  1:31 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-27  5:56 switch the block layer to use kmap_local_page v3 Christoph Hellwig
2021-07-27  5:56 ` [PATCH 01/15] MIPS: don't include <linux/genhd.h> in <asm/mach-rc32434/rb.h> Christoph Hellwig
2021-07-27  5:56 ` [PATCH 02/15] bvec: fix the include guards for bvec.h Christoph Hellwig
2021-07-27  5:56 ` [PATCH 03/15] bvec: add a bvec_kmap_local helper Christoph Hellwig
2021-07-27  5:56 ` [PATCH 04/15] bvec: add memcpy_{from,to}_bvec and memzero_bvec helper Christoph Hellwig
2021-07-27  5:56 ` [PATCH 05/15] block: use memzero_page in zero_fill_bio Christoph Hellwig
2021-07-27  5:56 ` [PATCH 06/15] rbd: use memzero_bvec Christoph Hellwig
2021-07-27  5:56 ` [PATCH 07/15] dm-writecache: use bvec_kmap_local instead of bvec_kmap_irq Christoph Hellwig
2021-07-27  5:56 ` [PATCH 08/15] ps3disk: use memcpy_{from,to}_bvec Christoph Hellwig
2021-07-27  5:56 ` [PATCH 09/15] block: remove bvec_kmap_irq and bvec_kunmap_irq Christoph Hellwig
2021-07-27  5:56 ` [PATCH 10/15] block: rewrite bio_copy_data_iter to use bvec_kmap_local and memcpy_to_bvec Christoph Hellwig
2021-07-27  5:56 ` [PATCH 11/15] block: use memcpy_to_bvec in copy_to_high_bio_irq Christoph Hellwig
2021-07-27  5:56 ` [PATCH 12/15] block: use memcpy_from_bvec in bio_copy_kern_endio_read Christoph Hellwig
2021-07-27  5:56 ` [PATCH 13/15] block: use memcpy_from_bvec in __blk_queue_bounce Christoph Hellwig
2021-07-27  5:56 ` [PATCH 14/15] block: use bvec_kmap_local in t10_pi_type1_{prepare,complete} Christoph Hellwig
2021-07-27  5:56 ` [PATCH 15/15] block: use bvec_kmap_local in bio_integrity_process Christoph Hellwig
2021-07-28  1:31 ` switch the block layer to use kmap_local_page v3 Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).