CCISS - Linux手册页

时间:2019-08-20 18:01:45  来源:igfitidea点击:

Linux程序员手册 第4部分
更新日期: 2017-09-15

名称

cciss-HP Smart Array块驱动程序

语法

modprobe cciss [ cciss_allow_hpsa=1 ]

说明

注意:此过时的驱动程序已在4.14版中从内核中删除,因为它已被较新内核中的hpsa(4)驱动程序所取代。

cciss是旧版HP Smart Array RAID控制器的块驱动程序。

Options

cciss_allow_hpsa = 1:此选项可防止cciss驱动程序尝试驱动hpsa(4)驱动程序能够控制的任何控制器,也就是说,此选项将cciss驱动程序限制为以下控制器:

Smart Array 5300
    Smart Array 5i
    Smart Array 532
    Smart Array 5312
    Smart Array 641
    Smart Array 642
    Smart Array 6400
    Smart Array 6400 EM
    Smart Array 6i
    Smart Array P600
    Smart Array P400i
    Smart Array E200i
    Smart Array E200
    Smart Array E200i
    Smart Array E200i
    Smart Array E200i
    Smart Array E500

Supported hardware

cciss驱动程序支持以下智能阵列板:

Smart Array 5300
    Smart Array 5i
    Smart Array 532
    Smart Array 5312
    Smart Array 641
    Smart Array 642
    Smart Array 6400
    Smart Array 6400 U320 Expansion Module
    Smart Array 6i
    Smart Array P600
    Smart Array P800
    Smart Array E400
    Smart Array P400i
    Smart Array E200
    Smart Array E200i
    Smart Array E500
    Smart Array P700m
    Smart Array P212
    Smart Array P410
    Smart Array P410i
    Smart Array P411
    Smart Array P812
    Smart Array P712m
    Smart Array P711m

Configuration details

要配置HP Smart Array控制器,请使用HP Array Configuration Utility(hpacuxe(8)或hpacucli(8))或在启动时从Smart Array的选件ROM运行的基于脱机ROM的配置实用程序(ORCA)。

文件

Device nodes

设备命名方案如下:

Major numbers:

    104     cciss0
    105     cciss1
    106     cciss2
    105     cciss3
    108     cciss4
    109     cciss5
    110     cciss6
    111     cciss7

Minor numbers:

    b7 b6 b5 b4 b3 b2 b1 b0
    |----+----| |----+----|
         |           |
         |           +-------- Partition ID (0=wholedev, 1-15 partition)
         |
         +-------------------- Logical Volume number

The device naming scheme is:

    /dev/cciss/c0d0         Controller 0, disk 0, whole device
    /dev/cciss/c0d0p1       Controller 0, disk 0, partition 1
    /dev/cciss/c0d0p2       Controller 0, disk 0, partition 2
    /dev/cciss/c0d0p3       Controller 0, disk 0, partition 3

    /dev/cciss/c1d1         Controller 1, disk 1, whole device
    /dev/cciss/c1d1p1       Controller 1, disk 1, partition 1
    /dev/cciss/c1d1p2       Controller 1, disk 1, partition 2
    /dev/cciss/c1d1p3       Controller 1, disk 1, partition 3

Files in /proc

文件/ proc / driver / cciss / cciss [0-9] +包含有关每个控制器的配置的信息。例如:

$ cd /proc/driver/cciss
$ ls -l
total 0
-rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss0
-rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss1
-rw-r--r-- 1 root root 0 2010-09-10 10:38 cciss2
$ cat cciss2
cciss2: HP Smart Array P800 Controller
Board ID: 0x3223103c
Firmware Version: 7.14
IRQ: 16
Logical drives: 1
Current Q depth: 0
Current # commands on controller: 0
Max Q depth since init: 1
Max # commands on controller since init: 2
Max SG entries since init: 32
Sequential access devices: 0

cciss/c2d0:   36.38GB       RAID 0

Files in /sys

/sys/bus/pci/devices/<dev>/ccissX/cXdY/model
显示控制器X的逻辑驱动器Y的SCSI INQUIRY页面0模型。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/rev
显示控制器X的逻辑驱动器Y的SCSI INQUIRY页面0修订版。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/unique_id
显示控制器X的逻辑驱动器Y的SCSI INQUIRY页面83序列号。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/vendor
显示控制器X的逻辑驱动器Y的SCSI INQUIRY页面0供应商。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/block:cciss!cXdY
到/ sys / block / cciss!cXdY的符号链接。
/sys/bus/pci/devices/<dev>/ccissX/rescan
写入此文件后,驱动程序将重新扫描控制器以发现任何新的,已删除或已修改的逻辑驱动器。
/sys/bus/pci/devices/<dev>/ccissX/resettable
此文件中显示的值为1表示此控制器接受" reset_devices = 1"内核参数(由kdump使用)。值为0表示将不支持" reset_devices = 1"内核参数。某些型号的Smart Array无法使用此参数。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/lunid
显示用于寻址控制器X的逻辑驱动器Y的8字节LUN ID。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/raid_level
显示控制器X逻辑驱动器Y的RAID级别。
/sys/bus/pci/devices/<dev>/ccissX/cXdY/usage_count
显示控制器X的逻辑驱动器Y的使用计数(打开次数)。

SCSI tape drive and medium changer support

支持SCSI顺序访问设备和介质转换器设备,并自动创建适当的设备节点(例如/ dev / st0,/ dev / st1等;有关更多详细信息,请参阅st(4)。)必须启用" SCSI磁带机在内核配置中支持" Smart Array 5xxx"和" SCSI支持",以便能够将SCSI磁带机与Smart Array 5xxx控制器一起使用。

此外,请注意,驱动程序在启动时不会使用SCSI内核。必须指示驱动程序通过/ proc文件系统条目动态地参与SCSI内核,该条目在驱动程序的"块"侧在运行时创建为/ proc / driver / cciss / cciss *。这是因为在驱动程序初始化时,SCSI内核可能尚未初始化(因为该驱动程序是块驱动程序),并且在这种情况下尝试向SCSI内核注册它会导致挂起。最好通过初始化脚本来完成此操作(通常在/etc/init.d中,但可能会因分布而异)。例如:

for x in /proc/driver/cciss/cciss[0-9]*
do
    echo "engage scsi" > $x
done

一旦驱动程序使用了SCSI内核,就无法将其断开(如果恰好是作为模块链接的,则通过卸载驱动程序除外)。

还要注意,如果未检测到顺序访问设备或介质更换器,则上述脚本的操作将不会占用SCSI核心。

Hot plug support for SCSI tape drives

支持SCSI磁带机的热插拔,但有一些警告。必须通知cciss驱动程序已经对SCSI总线进行了更改。这可以通过/ proc文件系统来完成。例如:

echo"重新扫描"> / proc / scsi / cciss0 / 1

这导致驱动程序:

1.
查询适配器有关物理SCSI总线和/或光纤通道仲裁环路的更改,以及
2.
记下任何新的或已卸下的顺序存取设备或介质更换器。

驱动程序将输出消息,指示已添加或卸下了哪些设备,以及用于寻址每个设备的控制器,总线,目标和lun。然后,驱动程序将这些更改通知SCSI中间层。

请注意,/ proc文件系统条目的命名约定除驱动程序名称外还包含一个数字(例如," cciss0"而不是您可能期望的" cciss")。

注意:cciss驱动程序仅将顺序访问设备和介质更换器作为SCSI设备提供给SCSI中间层。具体来说,物理SCSI磁盘驱动器不提供给SCSI中间层。呈现给内核的唯一磁盘设备是阵列控制器从物理驱动器上的区域构造的逻辑驱动器。逻辑驱动器呈现给块层(而不呈现给SCSI中间层)。对于驱动程序而言,重要的是防止内核直接访问物理驱动器,因为阵列控制器使用这些驱动器来构造逻辑驱动器。

SCSI error handling for tape drives and medium changers

Linux SCSI中间层提供了一个错误处理协议,只要SCSI命令在一定时间内未能完成(该命令可能有所不同),该协议就会启动。 cciss驱动程序在某种程度上参与了此协议。常规协议分为四个步骤:

*
首先,告知设备中止命令。
*
如果那不起作用,则重置设备。
*
如果这不起作用,则重置SCSI总线。
*
如果不起作用,则重置主机总线适配器。

cciss驱动程序既是块驱动程序,也是SCSI驱动程序,只有磁带驱动器和介质更换器才会显示在SCSI中间层。此外,与更直接的SCSI驱动程序不同,磁盘I / O在SCSI错误恢复过程中始终通过块侧。因此,cciss驱动程序仅执行这些操作中的前两个操作,从而中止命令并重置设备。还请注意,大多数磁带驱动器不会强制中止命令,有时,即使在大多数情况下,它们似乎都不会遵循复位命令。如果无法中止命令并且无法重置设备,则设备将设置为脱机状态。

如果触发了错误处理代码并且成功重置了磁带机或成功终止了tardy命令,则在发出某些将磁带定位到已知位置的命令之前,磁带机可能仍不允许I / O继续运行。位置。通常,必须先倒带(例如通过发出mt -f / dev / st0倒带),然后I / O才能再次进入重置的磁带驱动器。

另外参见

hpsa(4),cciss_vol_status(8),hpacucli(8),hpacuxe(8)

Linux内核源代码树中的文档和Documentation / blockdev / cciss.txt和文档/ ABI / testing / sysfs-bus-pci-devices-cciss

出版信息

这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/