第 3 章. 识别 SG 驱动程序的版本

早期版本的 sg 设备驱动程序要么没有版本号(例如,原始驱动程序),要么版本号以“2”开头。支持这种新接口的驱动程序的主版本号为“3”。sg 版本号的格式为“x.y.z”,由 SG_GET_VERSION_NUM ioctl() 给出的单个数字通过 (x * 10000 + y * 100 + z) 计算得出。此处讨论的 sg 驱动程序将从 SG_GET_VERSION_NUM 产生大于或等于 30000 的数字。也可以在新驱动程序中使用 cat /proc/scsi/sg/version 查看版本号。本文档描述了 lk 2.4 系列的 sg 版本 3.1.24。在 lk 2.4 系列期间添加了一些功能(例如,mmap-ed IO),因此并非在所有 lk 2.4 系列版本中都可用,这一点已注明。[1]

以下是 lk 2.4 系列期间出现过的 sg 版本列表。

注释

[1]

有一个 sg 版本 3.0.19,它是 lk 2.2 系列的可选驱动程序。它有以下限制

  • SCSI 命令的最大大小为 12 字节

  • sense 缓冲区限制为 16 字节

  • resid(剩余数据传输计数)始终为 0

  • 不支持直接和 mmap-ed IO(默认为间接 IO)