Linuxカーネルバージョン2.6.39.1に取り組んでおり、ブロックデバイスドライバーを開発しています。この点で、複数struct bioのsを1つに結合し、デバイスドライバーで処理するために-にstruct request追加します。request_queuescsi_request_fn()
->bi_nextのフィールドを使用して、作成したstruct bio複数struct bioのをリンクしてみました。これにより、のリンクリストが作成されましたstruct bio。submit_bio()I / O用にブロックデバイスレイヤーにバイオを送信するように呼び出すと、コードがを想定しているため、これ BUG_ON()がトリガーbio->bi_nextされますNULL。
サービスのために下位レイヤーに送信する前struct bioに、複数のを1つにリンクする方法はありますか?struct request