Browse Source

bio: define __BIOVEC_PHYS_MERGEABLE

Define __BIOVEC_PHYS_MERGEABLE as the default implementation of
BIOVEC_PHYS_MERGEABLE, so that its available for reuse within an
arch-specific definition of BIOVEC_PHYS_MERGEABLE.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Jeremy Fitzhardinge 16 years ago
parent
commit
f92131c3dd
1 changed files with 5 additions and 1 deletions
  1. 5 1
      include/linux/bio.h

+ 5 - 1
include/linux/bio.h

@@ -236,12 +236,16 @@ static inline void *bio_data(struct bio *bio)
 #define __BVEC_END(bio)		bio_iovec_idx((bio), (bio)->bi_vcnt - 1)
 #define __BVEC_END(bio)		bio_iovec_idx((bio), (bio)->bi_vcnt - 1)
 #define __BVEC_START(bio)	bio_iovec_idx((bio), (bio)->bi_idx)
 #define __BVEC_START(bio)	bio_iovec_idx((bio), (bio)->bi_idx)
 
 
+/* Default implementation of BIOVEC_PHYS_MERGEABLE */
+#define __BIOVEC_PHYS_MERGEABLE(vec1, vec2)	\
+	((bvec_to_phys((vec1)) + (vec1)->bv_len) == bvec_to_phys((vec2)))
+
 /*
 /*
  * allow arch override, for eg virtualized architectures (put in asm/io.h)
  * allow arch override, for eg virtualized architectures (put in asm/io.h)
  */
  */
 #ifndef BIOVEC_PHYS_MERGEABLE
 #ifndef BIOVEC_PHYS_MERGEABLE
 #define BIOVEC_PHYS_MERGEABLE(vec1, vec2)	\
 #define BIOVEC_PHYS_MERGEABLE(vec1, vec2)	\
-	((bvec_to_phys((vec1)) + (vec1)->bv_len) == bvec_to_phys((vec2)))
+	__BIOVEC_PHYS_MERGEABLE(vec1, vec2)
 #endif
 #endif
 
 
 #define __BIO_SEG_BOUNDARY(addr1, addr2, mask) \
 #define __BIO_SEG_BOUNDARY(addr1, addr2, mask) \