故障转移错误

在某些情况下,只装入缺省设置,并在日志文件中生成错误。

某些 Linux 分发版包含某一版本的 Qlogic HBA 驱动程序,它会省略 ql2xfailover 参数。 如果属于这种情况,那么在手动引导或装入 qla2xxx 模块时会在 /var/log/messages 文件中生成错误,并且只使用缺省设置装入该模块。 以下错误是一个示例:
FATAL: Error inserting qla2xxx
(/lib/modules/2.6.27.19-5-default/kernel/drivers
/scsi/qla2xxx/qla2xxx.ko):
Unknown symbol in module, or unknown parameter

在此类情况下,可以在 modprobe.conf 文件中省略 ql2xfailover=0 选项,这样模块就能正确装入。

发出 systool -m qla2xxx -v 命令以发现哪些 qla2xxxx 参数存在,以及它们当前的设置。 该命令产生以下类型信息:

root@ssd-x3550-62:~> systool -m qla2xxx -v
Module = qla2xxx

  Attributes:
    initstate           = live
    refcnt              = 0
    srcversion          = 80AC7E838B92CEA3675121B
    supported           = Yes
    version             = 8.03.01.08.11.1-k8

  Parameters:
    ql2xallocfwdump     = 1
    ql2xasyncenable     = 0
    ql2xetsenable       = 0
    ql2xextended_error_logging= 0
    ql2xfdmienable      = 1
    ql2xfwloadbin       = 0
    ql2xiidmaenable     = 1
    ql2xloginretrycount = 0
    ql2xlogintimeout    = 20
    ql2xmaxqdepth       = 32
    ql2xmaxqueues       = 1
    ql2xmultique_tag    = 0
    ql2xplogiabsentdevice= 0
    ql2xtargetreset     = 1
    qlport_down_retry   = 0

  Sections:
    .bss                = 0xffffffffa02bac00
    .data               = 0xffffffffa02b91a0
    .devinit.text       = 0xffffffffa02a9870
    .eh_frame           = 0xffffffffa02b4410
    .exit.text          = 0xffffffffa02a97ec
    .gnu.linkonce.this_module= 0xffffffffa02ba9e0
    .init.text          = 0xffffffffa02c4000
    .note.gnu.build-id  = 0xffffffffa02aa7d0
    .rodata             = 0xffffffffa02aa800
    .rodata.str1.1      = 0xffffffffa02b35b2
    .rodata.str1.8      = 0xffffffffa02ac5c0
    .smp_locks          = 0xffffffffa02ac0a0
    .strtab             = 0xffffffffa02c9548
    .symtab             = 0xffffffffa02c41f0
    .text               = 0xffffffffa027a000
    __bug_table         = 0xffffffffa02b4175
    __param             = 0xffffffffa02b41b8