我正在开发 Linux 内核版本 2.6.39.1,并且正在开发块设备驱动程序。对此,我想将多个struct bio
s 组合成一个 s struct request
,然后request_queue
由设备驱动添加到进行处理,即 -- scsi_request_fn()
。
我尝试使用->bi_next
of 字段struct bio
来链接struct bio
我已经组成的多个 s,从而创建了一个 s 的链表struct bio
。当我打电话submit_bio()
向 I/O 的块设备层提交 bio 时,这 BUG_ON()
会被触发,因为代码期望bio->bi_next
是NULL
.
有没有办法在将几个s发送到较低层进行服务之前将其链接struct bio
成一个?struct request