struct bio *bio
bio是该请求的bio结构链表,不能直接对该成员进行访问,而要使用rq_for_each_bio访问
struct bio_vec *bvec;
bio_for_each_segment(bvec,bio,segno)
合成函数:
struct req_iterator iter;
struct bio_vec *bvec;
struct request *req;
rq_for_each_segment(bvec,req,iter)
{
rq_iter_last(req,iter);//判断是否为最后一个bvec
}
#define
rq_for_each_segment(bvl, _rq, _iter)
__rq_for_each_bio(_iter.bio, _rq)
bio_for_each_segment(bvl, _iter.bio, _iter.i)
truct bio_vec结构:
struct bio_vec{
struct page *bv_page;
unsigned bv_len;
unsigned bv_offset;
}