mirror of https://gitee.com/openkylin/linux.git
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>
This commit is contained in:
parent
43381785a5
commit
f92131c3dd
|
@ -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) \
|
||||||
|
|
Loading…
Reference in New Issue