B.5. sg の変更

主な変更は、「sg_io_hdr」という新しいインタフェース構造体の追加です。 これまでの(「sg_header」と呼ばれていた)インタフェース構造体は、read() と wite() コマンドにおいて、raw データとメタデータを連結する必要があった点、 柔軟さに欠けていました。

sg_io_hdr          {新しいインタフェース構造体}
SG_IO              {新しい ioctl}
direct IO          {存在しているが、コメントアウトしてある。ALLOW_DIOを参照}
procfs output      {/proc/scsi/sg directory の新しい情報}
boot/module parameters  {新規}

sg_io_hdr インタフェース構造体からは、64 バイトまでのセンスデータが取得 できます。またデータ転送における残り分の数も取得できるようになっています (低レベルのドライバがサポートし、残り分が 0 でなければ)。