[Devel] [PATCH RHEL8 COMMIT] ploop: Convert call_rw_iter()

Konstantin Khorenko khorenko at virtuozzo.com
Mon May 17 19:04:52 MSK 2021


The commit is pushed to "branch-rh8-4.18.0-240.1.1.vz8.5.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh8-4.18.0-240.1.1.vz8.5.30
------>
commit e97261ecbac21f32bb48f93f642f4176123a8f68
Author: Kirill Tkhai <ktkhai at virtuozzo.com>
Date:   Mon May 17 19:04:52 2021 +0300

    ploop: Convert call_rw_iter()
    
    Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
    
    =====================
    Patchset description:
    
    dm-ploop: Kill loop
    
    Intermediate patches can't be base for bisect.
    
    In scope of https://jira.sw.ru/browse/PSBM-123654
    
    Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
---
 drivers/md/dm-ploop-map.c    | 3 +--
 drivers/md/dm-ploop-target.c | 3 +--
 drivers/md/dm-ploop.h        | 2 +-
 3 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop-map.c
index b62eb055160d..d98d1cdd1f9e 100644
--- a/drivers/md/dm-ploop-map.c
+++ b/drivers/md/dm-ploop-map.c
@@ -1290,7 +1290,6 @@ static void data_rw_complete(struct pio *pio)
 
 static void submit_rw_mapped(struct ploop *ploop, loff_t clu_pos, struct pio *pio)
 {
-	struct bio *bio = dm_bio_from_per_bio_data(pio, sizeof(*pio));
 	unsigned int rw, nr_segs;
 	struct bio_vec *bvec;
 	struct iov_iter iter;
@@ -1308,7 +1307,7 @@ static void submit_rw_mapped(struct ploop *ploop, loff_t clu_pos, struct pio *pi
 	remap_to_cluster(ploop, pio, clu_pos);
 	pos = to_bytes(pio->bi_iter.bi_sector);
 
-	call_rw_iter(top_delta(ploop)->file, pos, rw, &iter, bio);
+	call_rw_iter(top_delta(ploop)->file, pos, rw, &iter, pio);
 }
 
 static int process_one_deferred_bio(struct ploop *ploop, struct pio *pio,
diff --git a/drivers/md/dm-ploop-target.c b/drivers/md/dm-ploop-target.c
index f2bf9b06dc9b..14bd37610b25 100644
--- a/drivers/md/dm-ploop-target.c
+++ b/drivers/md/dm-ploop-target.c
@@ -41,9 +41,8 @@ static void ploop_aio_complete(struct kiocb *iocb, long ret, long ret2)
 }
 
 void call_rw_iter(struct file *file, loff_t pos, unsigned rw,
-		  struct iov_iter *iter, struct bio *bio)
+		  struct iov_iter *iter, struct pio *pio)
 {
-	struct pio *pio = bio_to_endio_hook(bio);
 	struct kiocb *iocb = &pio->iocb;
 	int ret;
 
diff --git a/drivers/md/dm-ploop.h b/drivers/md/dm-ploop.h
index a692b49f7ae6..581ebc999c8b 100644
--- a/drivers/md/dm-ploop.h
+++ b/drivers/md/dm-ploop.h
@@ -556,5 +556,5 @@ extern int ploop_setup_metadata(struct ploop *ploop, struct page *page);
 extern int ploop_read_delta_metadata(struct ploop *ploop, struct file *file,
 				     void **d_hdr);
 extern void call_rw_iter(struct file *file, loff_t pos, unsigned rw,
-			 struct iov_iter *iter, struct bio *bio);
+			 struct iov_iter *iter, struct pio *pio);
 #endif /* __DM_PLOOP_H */


More information about the Devel mailing list