Solaris 10 发行说明

硬件相关问题和错误

下列硬件相关的问题和错误适用于 Solaris 10 发行版。

SPARC: Solaris 10 OS 不支持 Sun Crypto Accelerator 4000 卡版本 1.0 和 1.1

Solaris 10 OS 提供新的密码学框架。不过,Sun Crypto Accelerator 4000 卡版本为 1.0 和 1.1 的软件和固件不使用此框架。因此,Solaris 10 OS 不支持这些版本。

2.0 发行版使用新框架。此发行版是对计划使用 Solaris 10 OS 的当前 Sun Crypto Accelerator 4000 用户提供的免费升级。因为 Sun Crypto Accelerator 4000 是导出控制的产品,您必须与 Sun Enterprise Services 或本地销售渠道联系以获得免费升级。有关其他信息,请参见 Sun 的 产品站点的 Sun Crypto Accelerator 4000 Web 页。

某些 USB 2.0 控制器被禁用

由于这些设备与 EHCI 驱动程序不兼容,对某些 USB 2.0 控制器的支持已被禁用。将显示以下消息:


Due to recently discovered incompatibilities with this 
USB controller, USB2.x transfer support has been disabled. 
This device will continue to function as a USB1.x controller. 
If you are interested in enabling USB2.x support please refer 
to the ehci(7D) man page. 
Please refer to www.sun.com/io for Solaris Ready products 
and to www.sun.com/bigadmin/hcl for additional compatible 
USB products.

有关 USB 设备的最新信息,请参见 http://www.sun.com/io_technologies/USB-Faq.html

支持的 USB 设备和相应的集线器配置

本 Solaris 发行版支持 USB 1.1 和 USB 2.0 设备。下表是工作于特定配置下的 USB 设备的摘要。连接类型可以是直接连接到计算机或通过 USB 集线器连接到计算机。注意,USB 1.1 设备和集线器是低速或全速的。USB 2.0 设备和集线器是高速的。有关操作的端口和速度的详细信息,请参见《System Administration Guide: Devices and File Systems》

表 3–1 USB 设备和配置

USB 设备 

连接类型 

USB 2.0 存储设备 

直连,USB 1.1 集线器,USB 2.0 集线器 

USB 1.1 设备(音频设备除外) 

直连,USB 1.1 集线器,USB 2.0 集线器 

USB 1.1 音频设备 

直连,USB 1.1 集线器 

USB 2.0 音频设备 

不支持 

x86: 对 Solaris 10 OS 中的某些设备驱动程序存在的限制

以下列表介绍对用于 x86 平台的此 Solaris 10 发行版中某些驱动程序和接口的限制:

Checkpoint Resume

已为所有设备类型关闭此功能。在 detach() 函数的 DDI_SUSPEND 代码中,应返回 DDI_FAILURE

Power Management

此功能不可用于 USB 设备。不要创建电源管理组件。编写驱动程序,以便仅在创建电源管理组件时调用 pm_raise_power()pm_lower_power()

无显示系统上的 DVD-ROM/CD-ROM 驱动器

交互式设备(如可拆卸介质)的电源管理与监视器和驱动监视器显卡的电源管理相联系。如果屏幕活动,则 CD-ROM 驱动器和软盘等设备仍然处于全电模式。在没有监视器的系统上,这些设备可切换到低电模式。要恢复 CD 或软盘的电源,键入 volcheck 以便从每个可拆卸设备获得最新状态。

或者,您可以使用 Dtpower GUI 禁用系统的电源管理。通过禁用电源管理,这些设备将始终处于全电模式。

x86: 指定非美国英语键盘需要手动配置

在缺省情况下,kdmconfig 程序指定 Generic US-English(104-Key) 作为连接到系统的键盘类型。如果系统键盘不是美国英语键盘,则必须在安装期间手动指定键盘类型。否则,会使用与系统的实际键盘类型不一致的缺省键盘规范继续安装。

解决方法 1:如果系统键盘不是美国英语键盘,请在安装期间执行以下步骤:

  1. 当显示“为安装建议的窗口系统配置”时,按 Esc 键。


    注 –

    “为安装建议的窗口系统配置”中的信息(包含键盘类型)仅显示 30 秒。如果希望更改配置设置,必须在 30 秒之内按 Esc 键。否则,会继续按照所显示的设置进行安装。


  2. 将键盘类型更改为与系统键盘对应的类型。

  3. 按 Enter 键接受更改,然后继续安装。

解决方法 2:如果想更改已在运行 Solaris 10 OS 的系统的键盘类型,请使用 kdmconfig 程序。选择适用于系统所运行的 X 服务器的类型的选项。

SPARC: 连接到磁带设备的某些主机总线适配器的 jfca 驱动程序可能导致错误 (6210240)

下列主机总线适配器 (HBA) 的 jfca 在这些 HBA 连接到磁带设备时可能导致系统出现紧急情况或引起 I/O 故障:

在运行特定操作时,这些 HBA 的 jfca 驱动程序容易出现竞争情况,从而导致错误。相应操作如下所示:

可能显示与下例相似的错误消息:

解决方法:不要将磁带设备连接到 SG-PCI1FC-JF2 或 SG-PCI2FC-JF2 HBA。

将 USB 2.0 集线器与 USB 1.x 设备一起使用可能导致系统出现紧急情况 (6209619)

如果在 USB 2.0 集线器下使用 USB 1.x 设备,系统可能出现紧急情况。以下为可能显示的错误消息之一:


BAD TRAP: type=31 rp=2a100f8d6a0 addr=38 mmu_fsr=0 occurred 
in module "usba" due to a NULL pointer

解决方法:不要对 USB 1.x 设备使用下列任何连接配置:

改为将 USB 1.x 设备直接连接到系统的 USB 1.1 端口。另外,可以使用连接到 USB 2.0 系统端口或 PCI 卡端口的 USB 1.1 外部集线器。


注 –

有关相应信息,请参见以下资源:


x86: 在某些主板上 EHCI 驱动程序不可用 (6204987)

某些主板上的 ICH5R 控制器中的系统软件无法通过 BIOS 控制 EHCI 硬件。将显示以下错误消息:


ehci_init_ctrl: Unable to take control from BIOS. EHCI support disabled.

因此,无法使用 EHCI 驱动程序。


注 –

有关相应信息,请参见以下资源:


解决方法:无。

使用 FireWire–1394 存储设备可能导致系统出现紧急情况 (6203680)

如果将 FireWire-1394 海量存储设备与可拆卸介质卷守护进程 (vold) 一起使用,系统可能出现紧急情况。硬盘驱动器和 CD 或 DVD 驱动器即属于这类存储设备。可能显示包括 "bad mutex" 项在内的错误消息。

解决方法:将 FireWire–1394 海量存储设备连接到系统之前执行以下步骤:

  1. 成为超级用户。

  2. 停止卷管理守护进程以禁用可拆卸介质管理:


    # /etc/init.d/volmgt stop
    

有关守护进程的更多信息,请参见 vold(1M) 手册页。

在播放或录制操作期间暂停 USB 音频设备可能导致系统死锁 (6200924)

在 USB 音频设备播放或录制期间,如果使用诸如 sdtaudiocontrol 的方式暂停设备,该驱动程序可能挂起。可能需要重新引导系统。

解决方法:不要暂停 USB 音频设备。


注 –

有关相应信息,请参见以下资源:


共享相同总线的某些设备之间存在争用 (6196994)

如果 Quad 快速以太网 (QFE) 卡与下列任何适配器共享同一总线,会出现总线争用:

这些适配器使用的 ce 驱动程序的无限成组传送参数在缺省情况下启用。因此,仅很少或无总线时间可用于共享同一总线的 QFE 端口。

解决方法:不要使 QFE 卡与列表中的网络适配器共享同一总线。

当 Num Lock 键为开时某些键盘键不工作 (6173972)

如果在运行某些 Java 应用程序时 Num Lock 键为开,其他键可能停止工作。部分受影响的键如下所示:

解决方法:关闭 Num Lock 键。

SPARC: 修订 ID 小于 32 的 GigaSwift 快速和千兆位以太网设备可能导致系统出现紧急情况 (5090222)

修订 ID (rev_id) 小于 32 的 GigaSwift 快速或千兆位以太网卡可能导致系统出现紧急情况。在下列运行 Solaris 10 OS 的系统中观察到紧急情况:

将显示以下错误消息:


panic: pcisch-1: Fatal PCI bus error(s)

解决方法:执行以下步骤。

  1. 确定设备的 rev_id


    kstat ce:instance | grep rev
    
  2. 如果 rev_id 小于 32,请使用 rev_id 等于或大于 32 的更高型号替换该卡。


注 –

在 x86 系统或未包含在以上列表中的基于 SPARC 的版本较旧的系统上,仍可使用原来的卡。


hat_getkpfnum() DDI 函数已过时 (5046984)

hat_getkpfnum() DDI 函数已过时。开发者应更新他们的设备驱动程序,以便不使用 hat_getkpfnum() DDI 接口。如果驱动程序使用 hat_getkpfnum(),会显示与下例相似的警告:


WARNING: Module mydrv is using the obsolete hat_getkpfnum(9F)
interface in a way that will not be supported in
a future release of Solaris. Please contact the
vendor that supplied the module for assistance,
or consult the Writing Device Drivers guide,
available from http://www.sun.com for migration
advice.
---
Callstack of bad caller:
       hat_getkpfnum_badcall+93
       hat_getkpfnum+6e
       mydrv_setup_tx_ring+2d
       mydrv_do_attach+84
       mydrv_attach+242
       devi_attach+6f
       attach_node+62
       i_ndi_config_node+82
       i_ddi_attachchild+4a
       devi_attach_node+4b
       devi_attach_children+57
       config_immediate_children+6e
       devi_config_common+77
       mt_config_thread+8b

要确定驱动程序是否在使用 hat_getkpfnum(),请参阅驱动程序源代码,或者使用 nm() 检查驱动程序的符号。使用驱动程序 mydrv 为例,键入以下语法:


% nm /usr/kernel/drv/mydrv | grep hat_getkpfnum

有关从 hat_getkpfnum() 迁移出驱动程序的指南,请参阅《Writing Device Drivers》中的附录 B “Summary of Solaris DDI/DKI Services”

某些带有 USB 2.0 硬件的系统可能会挂起或出现紧急情况 (5030842)

带有某种 USB 2.0 硬件的系统在运行本 Solaris 发行版时,可能经常会挂起或出现紧急情况。这些问题与不基于 NEC 芯片组的 USB 2.0 设备有关。在发生这些问题时,会显示下列有关增强主机控制器接口 (EHCI) 的错误消息:


WARNING: /pci@0,0/pci8086,244e@1e/pci925,1234@2,2 (ehci1):
This controller is not supported.
Please refer to www.sun.com/io for Solaris Ready products
and to www.sun.com/bidadmin/hcl for additional compatible USB products

解决方法:根据系统硬件配置的不同,请选择以下选项之一:


注 –

USB 2.0 端口由两个伴随硬件操作:

在基于 x86 的系统上,同时存在 OHCI 和 UHCI 的驱动程序。在基于 SPARC 的系统上,只支持 OHCI USB 1.1 主机控制器硬件。因此,如果 SPARC 系统上的伴随 EHCI 控制器被禁用,则只有带 OHCI 伴随控制器的 USB 硬件可以继续在该 SPARC 系统上工作。如果系统有适当的 OHCI 或 UHCI 驱动程序,即使 EHCI 被禁用,USB 硬件端口仍然可以操作。与这些端口相连接的 USB 2.0 设备的运行速度只能与 USB 1.1 设备相当。

要验证在基于 SPARC 的系统上是否存在 EHCI 和 OHCI 主机控制器,请键入:

# prtconf -D

在输出中检查 EHCI 项,这些项位于一条或多条 OHCI 项之后,如下例所示:


pci, instance #0 (driver name: pci_pci)
usb, instance #0 (driver name: usba10_ohci)
usb, instance #1 (driver name: usba10_ohci)
usb, instance #0 (driver name: usba10_ehci)

x86: 在 Sun Fire V65x 服务器上使用两个 Adaptec SCSI Card 39320D 卡会导致系统出现紧急情况 (5001908)

在 Sun Fire V65x 服务器上使用两个 Adaptec SCSI Card 39320D 卡会导致系统出现紧急情况。安装 Solaris 10 软件后,在初始重新引导期间发生该紧急情况。将显示以下错误消息:


Initializing system  Please wait... 
1 run-time error M6111: MATH
	- floating-point error: stack underflow

解决方法:卸下第二个 Adaptec 卡。

x86: 基于 x86 的 Solaris OS 不支持软系统关闭 (4873161, 5043369)

基于 x86 的 Solaris OS 不支持由某个命令启动的软系统关闭。关机命令模拟按下关闭电源的电源按钮。在基于 x86 的系统上,在 Solaris OS 运行时发出此命令会立即关闭电源,但不会正确关闭操作系统。不正确的关机过程可能会损坏文件系统。

解决方法:在关闭电源前,首先关闭操作系统。请执行以下步骤:

  1. 成为超级用户。

  2. 使用可用命令之一正确关闭 Solaris OS,例如,inithaltshutdown。例如:


    # shutdown
    
  3. 操作系统完全关闭后,可以通过以下两种方法之一关闭电源:

    • 如果系统支持软系统关闭,请发出命令以关闭电源。

    • 如果系统不支持软系统关闭,请使用电源开关手动关闭电源。

有关关闭操作系统的命令的更多信息,请参见 init(1M)halt(1M)shutdown(1M) 命令的手册页。有关关闭系统电源的信息,请参阅系统手册。

某些 DVD 和 CD-ROM 驱动器无法引导 Solaris (4397457)

SunSwiftTM PCI 以太网/SCSI 主机适配器 (X1032A) 卡的 SCSI 部分的缺省超时值不符合 Sun 的 SCSI DVD-ROM 驱动器 (X6168A) 的超时要求。使用特殊介质,DVD-ROM 会偶尔出现超时错误。唯一的例外是 Sun Fire 6800、4810、4800 和 3800 系统。这些系统以 OpenBoot PROM 的方式覆写 SCSI 超时值。

解决方法:对于其他平台,使用与板上 SCSI 接口或 DVD-ROM 兼容的 SCSI 适配器,如下例所示: