OSDN Git Service

block: remove bvec_to_phys
authorChristoph Hellwig <hch@lst.de>
Mon, 24 Sep 2018 07:43:53 +0000 (09:43 +0200)
committerJens Axboe <axboe@kernel.dk>
Mon, 24 Sep 2018 18:33:59 +0000 (12:33 -0600)
We only use it in biovec_phys_mergeable and a m68k paravirt driver,
so just opencode it there.  Also remove the pointless unsigned long cast
for the offset in the opencoded instances.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
arch/m68k/emu/nfblock.c
block/blk.h
include/linux/bio.h

index e9110b9..3804935 100644 (file)
@@ -73,7 +73,7 @@ static blk_qc_t nfhd_make_request(struct request_queue *queue, struct bio *bio)
                len = bvec.bv_len;
                len >>= 9;
                nfhd_read_write(dev->id, 0, dir, sec >> shift, len >> shift,
-                               bvec_to_phys(&bvec));
+                               page_to_phys(bvec.bv_page) + bvec.bv_offset);
                sec += len;
        }
        bio_endio(bio);
index 8f7229b..50f74ce 100644 (file)
@@ -157,8 +157,8 @@ static inline bool biovec_phys_mergeable(struct request_queue *q,
                struct bio_vec *vec1, struct bio_vec *vec2)
 {
        unsigned long mask = queue_segment_boundary(q);
-       phys_addr_t addr1 = bvec_to_phys(vec1);
-       phys_addr_t addr2 = bvec_to_phys(vec2);
+       phys_addr_t addr1 = page_to_phys(vec1->bv_page) + vec1->bv_offset;
+       phys_addr_t addr2 = page_to_phys(vec2->bv_page) + vec2->bv_offset;
 
        if (addr1 + vec1->bv_len != addr2)
                return false;
index 9b580e1..9ad4b0a 100644 (file)
@@ -133,11 +133,6 @@ static inline bool bio_full(struct bio *bio)
 }
 
 /*
- * will die
- */
-#define bvec_to_phys(bv)       (page_to_phys((bv)->bv_page) + (unsigned long) (bv)->bv_offset)
-
-/*
  * drivers should _never_ use the all version - the bio may have been split
  * before it got to the driver and the driver won't own all of it
  */