[Devel] [PATCH rh7 2/5] ploop: Kill unused sync vec functions
Kirill Tkhai
ktkhai at virtuozzo.com
Wed Jul 3 19:52:53 MSK 2019
Nobody uses these callbacks.
Signed-off-by: Kirill Tkhai <ktkhai at virtuozzo.com>
---
drivers/block/ploop/io_direct.c | 125 ---------------------------------------
drivers/block/ploop/io_kaio.c | 16 -----
include/linux/ploop/ploop.h | 6 --
3 files changed, 147 deletions(-)
diff --git a/drivers/block/ploop/io_direct.c b/drivers/block/ploop/io_direct.c
index 92a328c21b4f..754f35923950 100644
--- a/drivers/block/ploop/io_direct.c
+++ b/drivers/block/ploop/io_direct.c
@@ -1183,129 +1183,6 @@ dio_sync_write(struct ploop_io * io, struct page * page, unsigned int len,
return err;
}
-static int
-dio_sync_iovec(struct ploop_io * io, int rw, struct page ** pvec,
- unsigned int nr, sector_t sec)
-{
- struct bio_list bl = BIO_EMPTY_LIST;
- struct bio * bio;
- struct dio_comp comp;
- unsigned int len = PAGE_SIZE * nr;
- unsigned int off;
- struct extent_map * em;
- int err;
- sector_t nsec;
-
- bio = NULL;
- em = NULL;
- off = 0;
-
- init_completion(&comp.comp);
- atomic_set(&comp.count, 1);
- comp.error = 0;
-
- while (len > 0) {
- int copy;
-
- if (!em || sec >= em->end) {
- if (em)
- ploop_extent_put(em);
- em = extent_lookup_create(io, sec, len>>9);
- if (IS_ERR(em))
- goto out_em_err;
- }
-
- nsec = dio_isec_to_phys(em, sec);
-
- if (bio == NULL ||
- bio->bi_sector + (bio->bi_size>>9) != nsec) {
-flush_bio:
- bio = bio_alloc(GFP_NOFS, 32);
- if (bio == NULL)
- goto enomem;
- bio_list_add(&bl, bio);
- bio->bi_bdev = io->files.bdev;
- bio->bi_sector = nsec;
- }
-
- copy = len;
- if (copy > ((em->end - sec) << 9))
- copy = (em->end - sec) << 9;
- if (off/PAGE_SIZE != (off + copy + 1)/PAGE_SIZE)
- copy = PAGE_SIZE - (off & (PAGE_SIZE-1));
- if (bio_add_page(bio, pvec[off/PAGE_SIZE], copy,
- off & (PAGE_SIZE-1) ) != copy) {
- /* Oops. */
- goto flush_bio;
- }
-
- off += copy;
- len -= copy;
- sec += copy >> 9;
- }
-
- if (em)
- ploop_extent_put(em);
-
- while (bl.head) {
- struct bio * b = bl.head;
- bl.head = b->bi_next;
-
- b->bi_next = NULL;
- b->bi_end_io = dio_endio_sync;
- b->bi_private = ∁
- atomic_inc(&comp.count);
- submit_bio(rw, b);
- }
-
- if (atomic_dec_and_test(&comp.count))
- complete(&comp.comp);
-
- wait_for_completion(&comp.comp);
-
- return comp.error;
-
-
-enomem:
- err = -ENOMEM;
- goto out;
-
-out_em_err:
- err = PTR_ERR(em);
-out:
- while (bl.head) {
- struct bio * b = bl.head;
- bl.head = b->bi_next;
- b->bi_next = NULL;
- bio_put(b);
- }
- return err;
-}
-
-static int
-dio_sync_readvec(struct ploop_io * io, struct page ** pvec, unsigned int nr,
- sector_t sec)
-{
- return dio_sync_iovec(io, READ_SYNC, pvec, nr, sec);
-}
-
-static int
-dio_sync_writevec(struct ploop_io * io, struct page ** pvec, unsigned int nr,
- sector_t sec)
-{
- int err;
-
- if (!(io->files.file->f_mode & FMODE_WRITE))
- return -EBADF;
-
- err = dio_sync_iovec(io, WRITE_SYNC, pvec, nr, sec);
-
- if (sec < io->plo->track_end)
- ploop_tracker_notify(io->plo, sec);
-
- return err;
-}
-
/*
* Allocate and zero new block in file. Do it through page cache.
* It is assumed there is no point to optimize this, it is used
@@ -1914,8 +1791,6 @@ static struct ploop_io_ops ploop_io_ops_direct =
.write_page = dio_write_page,
.sync_read = dio_sync_read,
.sync_write = dio_sync_write,
- .sync_readvec = dio_sync_readvec,
- .sync_writevec = dio_sync_writevec,
.init = dio_init,
.destroy = dio_destroy,
diff --git a/drivers/block/ploop/io_kaio.c b/drivers/block/ploop/io_kaio.c
index e0464e3a074d..1e68727a3f87 100644
--- a/drivers/block/ploop/io_kaio.c
+++ b/drivers/block/ploop/io_kaio.c
@@ -749,20 +749,6 @@ kaio_write_page(struct ploop_io * io, struct ploop_request * preq,
kaio_io_page(io, IOCB_CMD_WRITE_ITER, preq, page, sec);
}
-static int
-kaio_sync_readvec(struct ploop_io * io, struct page ** pvec, unsigned int nr,
- sector_t sec)
-{
- return -EINVAL;
-}
-
-static int
-kaio_sync_writevec(struct ploop_io * io, struct page ** pvec, unsigned int nr,
- sector_t sec)
-{
- return -EINVAL;
-}
-
struct kaio_comp {
struct completion comp;
atomic_t count;
@@ -1147,8 +1133,6 @@ static struct ploop_io_ops ploop_io_ops_kaio =
.write_page = kaio_write_page,
.sync_read = kaio_sync_read,
.sync_write = kaio_sync_write,
- .sync_readvec = kaio_sync_readvec,
- .sync_writevec = kaio_sync_writevec,
.init = kaio_init,
.destroy = kaio_destroy,
diff --git a/include/linux/ploop/ploop.h b/include/linux/ploop/ploop.h
index 91fc8b47d079..5a71d602d486 100644
--- a/include/linux/ploop/ploop.h
+++ b/include/linux/ploop/ploop.h
@@ -179,12 +179,6 @@ struct ploop_io_ops
int (*sync_write)(struct ploop_io * io, struct page * page,
unsigned int len, unsigned int off, sector_t sec);
-
- int (*sync_readvec)(struct ploop_io * io, struct page ** pvec,
- unsigned int nr, sector_t sec);
- int (*sync_writevec)(struct ploop_io * io, struct page ** pvec,
- unsigned int nr, sector_t sec);
-
int (*init)(struct ploop_io * io);
void (*destroy)(struct ploop_io * io);
int (*open)(struct ploop_io * io);
More information about the Devel
mailing list