Centos-kernel-stream-9/drivers/nvdimm
Ming Lei 58bc3d322c block: remove ->rw_page
JIRA: https://issues.redhat.com/browse/RHEL-29262
Conflicts: small context difference for brd & zram, because we have
        ported commit 3f89ac587baa ("block/drivers: remove dead clear of random flag")

commit 3222d8c2a7f888bf38b845b125e9470b12108a4d
Author: Christoph Hellwig <hch@lst.de>
Date:   Wed Jan 25 14:34:36 2023 +0100

    block: remove ->rw_page

    The ->rw_page method is a special purpose bypass of the usual bio handling
    path that is limited to single-page reads and writes and synchronous which
    causes a lot of extra code in the drivers, callers and the block layer.

    The only remaining user is the MM swap code.  Switch that swap code to
    simply submit a single-vec on-stack bio an synchronously wait on it based
    on a newly added QUEUE_FLAG_SYNCHRONOUS flag set by the drivers that
    currently implement ->rw_page instead.  While this touches one extra cache
    line and executes extra code, it simplifies the block layer and drivers
    and ensures that all feastures are properly supported by all drivers, e.g.
    right now ->rw_page bypassed cgroup writeback entirely.

    [akpm@linux-foundation.org: fix comment typo, per Dan]
    Link: https://lkml.kernel.org/r/20230125133436.447864-8-hch@lst.de
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Dan Williams <dan.j.williams@intel.com>
    Cc: Dave Jiang <dave.jiang@intel.com>
    Cc: Ira Weiny <ira.weiny@intel.com>
    Cc: Jens Axboe <axboe@kernel.dk>
    Cc: Keith Busch <kbusch@kernel.org>
    Cc: Minchan Kim <minchan@kernel.org>
    Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
    Cc: Vishal Verma <vishal.l.verma@intel.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>

Signed-off-by: Ming Lei <ming.lei@redhat.com>
2024-03-19 10:06:25 +08:00
..
Kconfig nvdimm: Support sizeof(struct page) > MAX_STRUCT_PAGE_SIZE 2023-10-20 06:15:40 -04:00
Makefile
badrange.c
btt.c block: remove ->rw_page 2024-03-19 10:06:25 +08:00
btt.h
btt_devs.c
bus.c driver core: class: remove module * from class_create() 2023-11-01 11:12:29 -05:00
claim.c
core.c
dax_devs.c driver core: make struct bus_type.uevent() take a const * 2023-10-23 10:35:56 -05:00
dimm.c
dimm_devs.c driver core: make struct bus_type.uevent() take a const * 2023-10-23 10:35:56 -05:00
e820.c
label.c
label.h
namespace_devs.c
nd-core.h driver core: make struct bus_type.uevent() take a const * 2023-10-23 10:35:56 -05:00
nd.h driver core: make struct bus_type.uevent() take a const * 2023-10-23 10:35:56 -05:00
nd_perf.c
nd_virtio.c
of_pmem.c
pfn.h
pfn_devs.c nvdimm: Support sizeof(struct page) > MAX_STRUCT_PAGE_SIZE 2023-10-20 06:15:40 -04:00
pmem.c block: remove ->rw_page 2024-03-19 10:06:25 +08:00
pmem.h
region.c
region_devs.c Merge: update drivers/base to v6.4 2023-11-19 13:07:01 +01:00
security.c
virtio_pmem.c
virtio_pmem.h