JavaScript is required to for searching.
跳过导航链接
退出打印视图
Oracle® VM Server for SPARC 3.1.1.2、3.1.1.1、3.1.1 和 3.1 发行说明
Oracle 技术网
文档库
PDF
打印视图
反馈
search filter icon
search icon

文档信息

使用本文档

第 1 章 Oracle VM Server for SPARC 3.1.1.2、3.1.1.1、3.1.1 和 3.1 发行说明

Oracle VM Server for SPARC 3.1.1.2 维护更新

Oracle VM Server for SPARC 3.1.1.1 维护更新

本发行版新增功能

Oracle VM Server for SPARC 3.1.1.1 维护更新中的新增功能

Oracle VM Server for SPARC 3.1.1 发行版中的新增功能

Oracle VM Server for SPARC 3.1 发行版中的新增功能

系统要求

支持的平台

必需的软件和修补程序

必需的 Oracle Solaris OS 版本

Oracle VM Server for SPARC 3.1.1.1 维护更新所需的 Oracle Solaris OS 版本

Oracle VM Server for SPARC 3.1.1 必需的 Oracle Solaris OS 版本

Oracle VM Server for SPARC 3.1 必需的 Oracle Solaris OS 版本

启用最新 Oracle VM Server for SPARC 功能所必需的软件

必需的系统固件修补程序

必需的最低软件版本

直接 I/O 硬件和软件要求

PCIe SR-IOV 硬件和软件要求

非 primary 根域的硬件和软件要求

恢复模式硬件和软件要求

Oracle VM Server for SPARC 软件的位置

修补程序的位置

文档的位置

相关软件

可以与 Oracle VM Server for SPARC 软件一起使用的软件

与 Oracle VM Server for SPARC 交互的系统控制器软件

可选软件

升级到当前 Oracle VM Server for SPARC 软件

升级到 Oracle VM Server for SPARC 3.1.1.1 软件

升级到 Oracle VM Server for SPARC 3.1.1 软件

升级到 Oracle VM Server for SPARC 3.1 软件

已过时的 Oracle VM Server for SPARC 功能

已知问题

常见问题

当域相互提供服务时无法解除域绑定

当分配的 CPU 多于 1024 个时来宾域无法运行 Oracle Solaris 10 OS

避免创建其中的两个域彼此向对方提供服务的配置

从低于 Oracle Solaris 10 5/08 OS 的 Oracle Solaris 10 OS 升级

“服务处理器”一词和“系统控制器”一词可互换使用

在某些情况下,来宾域的 Solaris Volume Manager 配置或元设备可能会丢失

如何查找来宾域的 Solaris Volume Manager 配置或元设备

内存大小要求

引导大量域

彻底关闭 Oracle VM Server for SPARC 系统并对该系统执行关开机循环

如何关闭具有多个活动域的系统

如何对系统执行关开机循环

请求的内存大小可能不同于分配的内存

Logical Domains 变量持久性

Oracle Sun SNMP Management Agent 不支持多个域

延迟重新配置

加密单元

ldmp2v convert 命令:引导期间出现 VxVM 警告消息

Oracle 针对软件许可证的硬分区要求

使用 ldmp2v prepare -R 时不显示

有时,动态添加的内存块只能作为一个整体动态删除

ldmp2v 命令:不再使用 ufsdump 归档方法

在延迟重新配置期间,仅允许执行一个 CPU 配置操作

如果将多个虚拟交换机分配给一个网络适配器,则 Oracle VM Server for SPARC 3.1 ldmd 守护进程不会启动

Oracle Solaris 引导磁盘兼容性

域迁移限制

迁移的版本限制

迁移的 CPU 限制

跨 CPU 迁移的版本限制

只分配有一个虚拟 CPU 的域在实时迁移期间可能会出现紧急情况

Oracle VM Server for SPARC MIB 问题

使用版本 2 或版本 3 选项时 snmptable 命令不起作用

SR-IOV 问题

重新引导将 SR-IOV 虚拟功能分配给来宾域的 Oracle Solaris 10 根域时,很少情况下会出现错误的陷阱紧急情况。

销毁 SR-IOV 虚拟功能后,prtdiag 可能会导致 Oracle Solaris 10 根域出现紧急情况。

停止或启动 I/O 域时控制域挂起

创建光纤通道虚拟功能时在控制台上显示警告

光纤通道物理功能配置更改需要数分钟才能完成

Fujitsu M10 系统具有不同的 SR-IOV 功能限制

InfiniBand SR-IOV 问题

针对 InfiniBand SR-IOV 操作显示了误导性的消息

影响 Oracle VM Server for SPARC 软件的错误

影响 Oracle VM Server for SPARC 3.1.1.2 软件的错误

向部分核心 primary 域应用整体核心约束时系统崩溃

迁移来宾域后 format 命令挂起或者来宾域控制台不接受输入

内核区域阻止来宾域的实时迁移

影响 Oracle VM Server for SPARC 3.1.1.1 软件的错误

实时迁移可能失败,出现错误:Unable to restore ldc resource state on target Domain Migration of LDom failed

恢复模式失败,出现错误:ldmd in Maintenance Mode When Virtual Switch net-dev Is Missing

迁移到 SPARC M5 或 SPARC T5 系统可能会出现紧急情况,出现错误:suspend: get stick freq failed

Logical Domains Manager 不禁止创建循环依赖关系

影响 Oracle VM Server for SPARC 3.1.1 软件的错误

较大的 LDC 数量可能导致来宾域中出现 Oracle Solaris 问题

光纤通道物理功能被 FMA 标记为发生故障并被禁用

存在大量虚拟网络设备时会看到虚拟网络 LDC 握手问题

Sun Storage 16 Gb 光纤通道通用 HBA 固件不支持带宽控制

在执行跨 CPU 迁移后添加内存可能会导致来宾域出现紧急情况

根域中光纤通道虚拟功能的设备路径不正确

尝试绑定处于正在绑定或正在解除绑定状态的域时,ldmd 会进行核心转储

影响 Oracle VM Server for SPARC 3.1 软件的错误

FMA 检测到故障内存时可能会出现问题

ldmd 服务由于创建 virtual-channel@0:hvctl 存在延迟而无法启动

在延迟重新配置中先于 CPU 分配内存时控制域上的关联性较差

无法在使用 EFI GPT 磁盘标签的单分片虚拟磁盘上安装 Oracle Solaris 11.1 OS

在迁移后,域在启动或重新引导后在引导时可能会出现紧急情况

迁移期间使用了预分配的计算机描述缓冲区大小

在成功的核心重映射操作后尝试调整来宾域的虚拟 CPU 的大小可能会失败

Oracle Solaris 10:当 failure-policy=reset 时,非 primary 根域在 primary 根域重新引导时挂起

虚拟网络挂起阻止了域迁移

ldmpower 输出有时不包括时间戳

mac_do_softlso 丢弃 LSO 包

迁移故障: Invalid Shutdown-group: 0

在删除虚拟功能或 PCIe 设备后,自动保存配置没有更新

ldmp2v convert 命令失败导致升级循环

误允许将域从运行系统固件 8.3 的 SPARC T4 系统迁移到 SPARC T5、SPARC M5 或 SPARC M6 系统

来宾域在 lgrp_lineage_add(mutex_enter: bad mutex, lp=10351178) 处出现紧急情况

来宾域在 primary 域重新引导后处于过渡状态

当虚拟网络设备驱动程序在 TxDring 模式下运行时,极少情况下会出现紧急情况

只分配有一个虚拟 CPU 的域在实时迁移期间可能会出现紧急情况

当从 SPARC T5、SPARC M5 或 SPARC M6 系统向 UltraSPARC T2 或 SPARC T3 系统执行跨 CPU 迁移时,ldm migrate -n 应该会失败

恢复模式应当支持移除非 primary 根域中的 PCIe 插槽

ldm list 没有显示物理 I/O 设备的 evacuated 属性

在域迁移期间收到了无效的物理地址

在压力下对来宾域使用 ldm stop 命令时会出现 send_mondo_set: timeout 紧急情况

PCIe 设备下的子设备恢复成未分配的名称

在附加 I/O 设备驱动程序时,WARNING: ddi_intr_alloc: cannot fit into interrupt pool 指出中断供应已耗尽

SPARC M5-32 和 SPARC M6-32:panic: mpo_cpu_add: Cannot read MD

SPARC M5-32 和 SPARC M6-32:可通过多个直接 I/O 路径访问的磁盘会出现问题

重新引导 primary 域后,SR-IOV 域中的 ixgbevf 设备可能会变为禁用状态

重新引导 Oracle Solaris 10 1/13 primary 域可能不会自动为虚拟功能接口激活或分配 IP 地址

仅限 Oracle Solaris 10:在重新引导或关闭期间,mutex_enter: bad mutex 在 primary 域中出现紧急情况

SPARC M5-32 和 SPARC M6-32:LSI-SAS 控制器不正确地导出为支持 SR-IOV

SPARC T5-8:对于某些 ldm 列表命令,运行时间数据显示了值 0

在 SPARC T5-1B 系统的 primary 域中,无法为 sxge 虚拟功能设置大型 MTU

ldmd 无法设置 sxge 设备的 mac-addr 和 alt-mac-addrs 属性值

SPARC T5-1B 系统上 sxge 设备的 ldm list-io -d 输出缺少两个属性

ldm 无法从来宾域清除出现故障的核心

将内存减少至低于四 GB 时内存 DR 操作会挂起

大量虚拟 CPU 的 CPU DR 操作可能会显示为失败

具有 HIO 虚拟网络且 cpu-arch=generic 的来宾域迁移发生超时并一直等待该域暂停

SPARC T4-4:无法绑定来宾域

将 threading 属性值从 max-throughput 更改为 max-ipc 时来宾域出现紧急情况

在具有两个活动直接 I/O 域的情况下控制域在重新引导时挂起

内存 DR 添加部分成功时不显示错误消息

对包含混合 I/O 网络设备的来宾域解除绑定或进行迁移时,primary 域或来宾域出现紧急情况

从 XML 文件重新创建具有 PCIe 虚拟功能的域失败

将控制域从使用整体核心更改为使用部分核心时发出不正确的错误消息

ldm init-system 命令可能无法正确恢复已执行了物理 I/O 更改的域配置

您尝试同时修改许多域时 Logical Domains Manager 可能会崩溃并重新启动

ldm list -o 命令不再接受 format 缩写

控制域需要系统中的最低核心

取消迁移后,在目标系统上运行的 ldm 命令不响应

某些 Emulex 卡在分配给 I/O 域后不工作

在迁移到 SPARC T4 系统过程中运行 cputrack 命令时,来宾域出现紧急情况

Oracle Solaris 11:DRM 窃取操作报告 Oracle Solaris DR 失败并重试

限制可以分配给域的最大虚拟功能数

进行跨 CPU 迁移的来宾域在迁移完成后报告的运行时间不正确

Oracle Solaris 10:使用 Intel Dual Port Ethernet Controller X540 卡引导时,ixgbe 驱动程序可能会导致出现紧急情况

来宾域控制台在 SPARC T4 系统上随机挂起

销毁所有虚拟功能并将插槽返回到根域无法恢复根联合体资源

应该对具有 PCIe 到 PCI 桥的 PCIe 卡禁用 ldm remove-io

如果在 ldm start 命令后立即发出 ldm stop 命令,后者可能会失败

init-system 无法从保存的 XML 文件为来宾域恢复指定的核心约束

重新引导分配了大量虚拟功能的 primary 域时系统出现紧急情况

使用部分核心的 primary 域无法进行整体核心 DR 转换

引导后,ldm list-io 命令显示 UNK 或 INV 状态

在 SPARC T4-4 系统上迁移内存非常大的域会导致目标系统上的域出现紧急情况

从来宾域中删除大量 CPU 会失败

无法使用 Oracle Solaris 热插拔操作来热删除 PCIe 端点设备

迁移包含混合 I/O 和虚拟 I/O 虚拟网络设备的来宾域时,nxge 出现紧急情况

迁移过程中丢失共享 NFS 资源时所有 ldm 命令挂起

如果系统日志服务不联机,Logical Domains 代理服务就无法联机

内核死锁导致计算机在迁移过程中挂起

DRM 和 ldm list 输出显示的虚拟 CPU 数与来宾域中的实际虚拟 CPU 数不符

对依赖于目标计算机上的非活动主域的域进行实时迁移导致 ldmd 发生故障并具有分段故障

删除策略或策略过期后,DRM 无法为迁移后的域恢复默认数量的虚拟 CPU

DR 过程中虚拟 CPU 超时失败

当系统 MAC 地址与其他 MAC 地址发生冲突时,不报告迁移失败原因

“相反方向”的同时迁移操作可能会导致 ldm 挂起

从控制域中删除大量 CPU 会失败

设置了弹性策略并且在运行 Oracle Solaris 10 8/11 OS 的系统可能会挂起

pkgadd 无法在 /var/svc/manifest/platform/sun4v/ldmd.xml 上设置 ACL 项

SPARC T3-1:可通过多个直接 I/O 路径访问的磁盘会出现问题

对多个已激活的 NIU nxge 实例执行内存 DR 删除操作可能会无限期挂起而且永远无法完成

对具有主-从关系的域使用 ldm stop -a 命令会在从域中设置 stopping 标志

迁移启用了默认 DRM 策略的域导致为目标域指定所有可用的 CPU

某个正在使用中的 MAC 地址可以被重新分配

ldmconfig 无法在 SP 上创建域配置

当 cpu0 处于脱机状态时,可能会阻止对 Oracle Solaris 域进行非协同迁移

在取消迁移之后,内存 DR 处于禁用状态

有时,对虚拟网络设备的 MTU 值执行动态重新配置会失败

当目标 OS 不支持对加密单元执行 DR 时,具有 MAU 的迁移域仅包含一个 CPU

实际地址内存绑定故障显示令人困惑的迁移失败消息

从域中动态删除所有的加密单元导致 SSH 终止

PCI Express Dual 10-Gigabit Ethernet Fiber 卡在 ldm list-io -l 输出中显示四个子设备

将 Logical Domains mpgroup 与 MPXIO 存储阵列配置一起使用以实现磁盘高可用性

当多个域正在引导时,ldm 命令很慢,无法响应

Oracle Solaris 11:配置有自动网络接口的区域可能无法启动

Oracle Solaris 10:未在控制域中正确创建虚拟网络设备

如果配置了 Logical Domains,则新添加的 NIU/XAUI 适配器在主机操作系统中不可见

从 e1000g 引导时,I/O 域或来宾域出现紧急情况

显式控制台组和端口绑定未迁移

当目标上的 vdsdev 具有不同的后端时迁移不失败

即使目标有足够的可用内存,迁移功能也无法绑定内存

当计算机未联网而且 NIS 客户机正在运行时,Logical Domains Manager 不启动

当迁移后的域已经引导时,Logical Domains Manager 将这些域显示为处于过渡状态

除非重新启动 vntsd,否则无法连接到迁移后的域控制台

有时,从 Logical Domains 系统执行 uadmin 1 0 命令时系统不返回到 OK 提示符

Logical Domains Manager 关闭域至少需要 15 分钟

scadm 命令在 SC 或 SP 重置之后可能会挂起

在公用控制台组中同时进行多个域的网络安装会失败

在同一个网络上有太多虚拟网络使用 DHCP 的来宾域可能会变得不响应

运行 Logical Domains Manager 时无法使用 eeprom 命令修改 OpenBoot PROM 变量

在 Logical Domains 运行时无法设置安全密钥

ldm stop-domain 命令的行为可能会令人困惑

文档问题

ldm1M 手册页:描述了有关使用 mblock 属性的限制

ldm1M 手册页:改进了对 ldm list -o status 命令的描述

ldm1M 手册页:仅 ldm add-spconfig -r 执行手动恢复

《Oracle VM Server for SPARC 3.1 管理指南》光纤通道 SR-IOV OS 要求不正确

已解决的问题

Oracle VM Server for SPARC 3.1.1.2 发行版中解决的问题

Oracle VM Server for SPARC 3.1.1.1 发行版中解决的问题

Oracle VM Server for SPARC 3.1.1 发行版中解决的问题

Oracle VM Server for SPARC 3.1.0.1 发行版中解决的问题

Oracle VM Server for SPARC 3.1 发行版中解决的问题

影响 Oracle VM Server for SPARC 软件的错误

以下各部分概括了在使用各个版本的 Oracle VM Server for SPARC 3.1 软件时可能会遇到的问题。每个部分都列出了在相应发行版中发现的问题。这些问题可能会在任何或所有 Oracle VM Server for SPARC 3.1 发行版中发生。最新的错误最先列出。如果有解决方法和恢复过程,则会提供。


注 - 本节中描述的某些错误在 Oracle VM Server for SPARC 3.1 发行版后已经修复。保留了这些错误说明是为了方便那些仍然在运行 Oracle VM Server for SPARC 3.1 发行版的人员。

影响 Oracle VM Server for SPARC 3.1.1.2 软件的错误

向部分核心 primary 域应用整体核心约束时系统崩溃

错误号 19456310:使用动态重新配置向 primary 域应用整体核心约束时,删除部分核心将导致 OS 出现紧急情况或导致系统关开机循环。

与其他域共享部分核心或者此核心中的其中一个空闲导线束出现故障时,会删除此部分核心。

解决方法:使用延迟重新配置向具有部分核心的 primary 域应用整体核心约束。

  1. 确认 primary 域没有整体核心约束。

    primary# ldm list -o resmgmt primary
  2. 确认 primary 域具有部分核心。

    primary# ldm list -o core primary
  3. primary 域上启动延迟重新配置。

    primary# ldm start-reconf primary
  4. 应用整体核心约束。

    例如,以下命令向 primary 域分配两个整体核心:

    primary# ldm set-core 2 primary
  5. 重新引导 primary 域。

迁移来宾域后 format 命令挂起或者来宾域控制台不接受输入
内核区域阻止来宾域的实时迁移

错误号 18289196:在 SPARC 系统上,Oracle VM Server for SPARC 域中某个正在运行的内核区域将阻止来宾域的实时迁移。将显示以下错误消息:

Live migration failed because Kernel Zones are active.
Stop Kernel Zones and retry.

解决方法:请选择下列解决方法之一:

影响 Oracle VM Server for SPARC 3.1.1.1 软件的错误

实时迁移可能失败,出现错误:Unable to restore ldc resource state on target Domain Migration of LDom failed

错误号 19454837:在运行特定版本的 SPARC 系统固件的系统上实时迁移域可能失败,出现以下错误消息:

system1 # ldm migrate ldg1 system2
Target Password:
Unable to restore ldc resource state on target
Domain Migration of LDom ldg1 failed

该错误消息在将所有域状态传输到目标计算机之后但在尝试暂停源计算机上要迁移的域之前出现。要迁移的域继续在源系统上运行。

迁移:除非要利用新提高的 LDC 限制(并且不使用实时迁移功能),否则请避免将您的系统更新到系统固件版本 8.5.1 或 9.2.1,直到至少版本 8.6 和 9.3 发布之后。

恢复:执行源计算机的开关机循环以允许实时迁移域。

解决方法:无。

恢复模式失败,出现错误:ldmd in Maintenance Mode When Virtual Switch net-dev Is Missing

错误号 18770805:如果虚拟交换机 net-dev 发生故障,无法验证,则恢复操作将失败,ldmd 守护进程将转储核心。

恢复:禁用恢复模式,并手动恢复配置。

迁移到 SPARC M5 或 SPARC T5 系统可能会出现紧急情况,出现错误:suspend: get stick freq failed

错误号 16934400:在将来宾域迁移到 SPARC M5 或 SPARC T5 系统时,来宾域上的操作系统可能会发生紧急情况,出现 suspend: get stick freq failed 消息。

解决方法:在要迁移的来宾域中,向 /etc/system 文件添加以下行:

set migmd_buf_addl_size = 0x100000

重新引导来宾域以使更改生效。

Logical Domains Manager 不禁止创建循环依赖关系

错误号 15751041:Logical Domains Manager 允许在两个域互相提供服务的情况下创建循环配置。建议不要采用这种配置,因为在一个域占用另一个域时,会造成单点故障。此外,循环依赖关系还会阻止受影响的域解除绑定。

解决方法:如果循环依赖关系配置阻止域解除绑定,请移除导致循环依赖关系的设备,然后重新尝试解除绑定操作。

影响 Oracle VM Server for SPARC 3.1.1 软件的错误

较大的 LDC 数量可能导致来宾域中出现 Oracle Solaris 问题

错误号 19480835:以下 Sun 系统固件版本增加了每个来宾域的逻辑域通道 (Logical Domain Channel, LDC) 的数量。

每个来宾域的 LDC 数量的这种增加要求至少运行 Logical Domains Manager 3.1.1.1。

要防止在使用 3.1.1 版本(含)之前的 Logical Domains Manager 时可能出现的问题,请不要将每个来宾域的 LDC 数量增加到超过 768 个(这是以前的系统固件版本支持的数量)。例如,在至少安装 Logical Domains Manager 3.1.1.1 之前,不要添加大量虚拟磁盘和虚拟网络接口。

光纤通道物理功能被 FMA 标记为发生故障并被禁用

错误号 18168525 和 18156291:您必须将光纤通道 PCIe 卡连接到支持 NPIV 并且与 PCIe 卡兼容的光纤通道交换机。如果您未使用此配置,则使用 format 命令或者创建或销毁虚拟功能可能会导致物理功能被 FMA 标记为发生故障并被禁用。如果发生此故障,则消息类似于以下内容:

SUNW-MSG-ID: PCIEX-8000-0A, TYPE: Fault, VER: 1, SEVERITY: Critical
EVENT-TIME: event-time
PLATFORM: platform-type
SOURCE: eft, REV: 1.16
EVENT-ID: event-ID
DESC: A problem was detected for a PCIEX device.
AUTO_RESPONSE: One or more device instances may be disabled
IMPACT: Loss of services provided by the device instances associated with
this fault
REC-ACTION: Use 'fmadm faulty' to provide a more detailed view of this event.
Please refer to the associated reference document at
http://support.oracle.com/msg/PCIEX-8000-0A for the latest service procedures
and policies regarding this diagnosis.

解决方法:如果卡已被 FMA 标记为发生故障,请首先检查其连接并确保该卡未直接连接到存储。然后,执行与您的配置匹配的步骤:

存在大量虚拟网络设备时会看到虚拟网络 LDC 握手问题

错误号 18166010:如果部署中有大量虚拟网络设备,可能会遇到虚拟网络 LDC 握手问题。

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

  1. 通过向 /etc/system 文件添加以下条目在具有虚拟网络设备的所有域上增大握手尝试次数:

    set vnet:vgen_ldc_max_resets = 25

    请注意,必须重新引导在其上更新了 /etc/system 文件的所有域,更改才会生效。有关 /etc/system 可调整项的信息,请参见 system(4) 手册页。

  2. 虚拟交换机中需要大量虚拟网络设备时禁用 inter-vnet 链路。

    如果有八个以上虚拟网络设备使用给定的虚拟交换机,请将 inter-vnet-link 属性设置为 off。禁用 inter-vnet-link 属性可以避免使用 N2 通道进行 inter-vnet 通信。此更改可能会对 inter-vnet 通信的性能有负面影响。因此,如果来宾域到来宾域性能对部署至关重要,请创建一个单独的系统专用虚拟交换机(不指定 net-dev 设备),使其仅使用需要 inter-vnet 通信的虚拟网络设备。

    如果部署不需要高性能的来宾域到来宾域通信,请将 inter-vnet-link 属性设置为 off,即使使用给定虚拟交换机的虚拟网络设备较少也是如此。

    primary# ldm set-vsw inter-vnet-link=off vsw0

如果此解决方法不能解决您的问题,最后的补救方法是在具有虚拟网络和虚拟交换机设备的所有域上的 /etc/system 文件中进行以下更改。

请注意,以此方式更新 /etc/system 文件可能会对来宾域到来宾域通信性能有负面影响。

  1. 向具有虚拟网络设备的域的 /etc/system 文件添加以下条目:

    set vnet:vnet_num_descriptors = 512
  2. 向具有虚拟交换机设备的域的 /etc/system 文件添加以下条目:

    set vsw:vsw_num_descriptors = 512
  3. 重新引导系统以使这些设置生效。

Sun Storage 16 Gb 光纤通道通用 HBA 固件不支持带宽控制

错误号 18083904:Sun Storage 16 Gb 光纤通道通用 HBA 固件 Emulex 卡不支持设置带宽控制。HBA 固件将忽略为 bw-percent 属性指定的任何值。

解决方法:无。

在执行跨 CPU 迁移后添加内存可能会导致来宾域出现紧急情况

错误号 18032944:在 SPARC T5、SPARC M5 或 SPARC M6 计算机上向运行不同 CPU 类型的平台执行跨 CPU 的实时域迁移会成功。不过,随后执行增大来宾域内存大小的内存动态重新配置操作可能会导致与以下情况类似的紧急情况:

panic[cpu0]/thread=2a1003c9c60: kphysm_add_memory_dynamic(1018000, 200000):
range has 2097152 pages, but memgr p_walk_pfnrange only reported 0
 000002a1003c9500 genunix:kphysm_add_memory_dynamic+254 (1018000, 200000,
12e8000, 3, 1218000, 0)

vpanic(12e8220, 1018000, 200000, 200000, 0, 2a1003c95c8)
kphysm_add_memory_dynamic+0x254(1018000, 200000, 12e8000, 3, 1218000, 0)
dr_mem_configure+0x94(1018000, 2a1003c97b4, fffffff, 2430000000, 1068ac00,
1068ac00)
dr_mem_list_wrk+0x15c(4c01b3382b8, 0, 20, 4c014ba27c8, 1, 1)
dr_mem_data_handler+0xa8(0, 4c01b3382b8, 20, 2a1003c9890, 7bac0644, 16)
ds_dispatch_event+0x2c(4c01ee33478, 7bf888b8, 48, 7bf88800, 9, 9)
taskq_thread+0x3a8(95af9e15e84, 4c010a5caf0, 95af9e15f74, 4c010a5cb22,
4c010a5cb24, 4c01e24d688)
thread_start+4(4c010a5caf0, 0, 0, 0, 0, 0)

此情况不影响 CPU 类型相同的系统之间或 cpu-arch=native 的域之间的迁移。

解决方法:在从具有这些配置之一的系统迁移域后,在尝试通过动态重新配置添加内存之前,必须重新引导来宾域。

根域中光纤通道虚拟功能的设备路径不正确

错误号 18001028:在根域中,光纤通道虚拟功能的 Oracle Solaris 设备路径不正确。

例如,不正确的路径名为 pci@380/pci@1/pci@0/pci@6/fibre-channel@0,2,应当为 pci@380/pci@1/pci@0/pci@6/SUNW,emlxs@0,2

ldm list-io -l 输出显示了光纤通道虚拟功能的正确设备路径。

解决方法:无。

尝试绑定处于正在绑定或正在解除绑定状态的域时,ldmd 会进行核心转储

错误号 17796639:当运行 Oracle Enterprise Manager Ops Center 12c 发行版 1 更新 4 (12.1.4.0.0) 时,如果您尝试对处于正在绑定或正在解除绑定状态的域执行绑定、解除绑定、启动或停止操作,则 ldmd 服务可能会执行核心转储并且域将降级到维护模式。

恢复:如果 ldmd 服务已执行了核心转储,请对系统执行关开机循环以重新使 ldmd 服务联机。

解决方法:通过运行 ldm list 命令确定域是否处于正在绑定或正在解除绑定状态。如果是,请等待该过程完成并且域处于已绑定或非活动状态。

影响 Oracle VM Server for SPARC 3.1 软件的错误

FMA 检测到故障内存时可能会出现问题

错误号 17663828 和 17576087:FMA 尝试将极小范围的内存分离为系统总内存容量的百分比时,Logical Domains Manager 可能会错误地将很大范围的内存标记为被列入黑名单。

解决方法:如果大量内存不再出现在 ldm list-devices -a memory 输出中,请与 Oracle 服务部门联系以确认并确定必须更换 DIMM。

更换故障内存后,对 factory-default 配置执行系统关开机循环。然后,对要使用的配置执行系统关开机循环。

ldmd 服务由于创建 virtual-channel@0:hvctl 存在延迟而无法启动

错误号 17627526:在系统引导期间,有时候会发生以下极少见的情况:ldmd 守护进程用来与虚拟机管理程序进行通信的设备在 svc:/ldoms/ldmd:default SMF 服务启动之时尚未创建。此行为会导致 ldmd SMF 服务降级到维护模式。

ldmd SMF 日志中会出现以下错误消息:

ldmd cannot communicate with the hypervisor as the required device
does not exist:
/devices/virtual-devices@100/channel-devices@200/virtual-channel@0:hvctl

恢复:检验 /devices/virtual-devices@100/channel-devices@200/virtual-channel@0:hvctl 设备是否存在,然后运行 svcadm clear ldmd 命令。

在延迟重新配置中先于 CPU 分配内存时控制域上的关联性较差

错误号 17606070:在延迟重新配置中,如果在将 CPU 分配给 primary 域之前分配内存,在发出 ldm set-memory 命令时,内存将与分配的 CPU 具有关联性,即使执行附加的 ldm set-vcpuldm set-core 命令也是如此。例如,以下命令可能会产生这样的情况,分配给 primary 域的 16 GB 内存可能与 ldm set-core 命令后来分配的八个核心没有关联性:

primary# ldm start-reconf primary
primary# ldm set-mem 16G primary
primary# ldm set-core 8 primary
primary# reboot

解决方法:确保先将核心分配给 primary 域,然后再分配内存。例如,以下命令先将八个核心分配给 primary 域,然后分配 16 GB 内存:

primary# ldm start-reconf primary
primary# ldm set-core 8 primary
primary# ldm set-mem 16G primary
primary# reboot
无法在使用 EFI GPT 磁盘标签的单分片虚拟磁盘上安装 Oracle Solaris 11.1 OS

错误号 17422973:在单分片磁盘上安装 Oracle Solaris 11.1 OS 可能会失败,而且在至少运行系统固件版本 8.4.0 的 SPARC T4 服务器上,至少运行系统固件版本 9.1.0 的 SPARC T5、SPARC M5 或 SPARC M6 服务器上或者至少运行 XCP 版本 2230 的 Fujitsu M10 系统上会出现以下错误:

cannot label 'c1d0': try using fdisk(1M) and then provide a specific slice
Unable to build pool from specified devices: invalid vdev configuration

解决方法:重新为磁盘添加 SMI 标签。

在迁移后,域在启动或重新引导后在引导时可能会出现紧急情况

错误号 17285811:在执行后续的重新引导或域启动操作时,以前迁移的来宾域可能会因为内核紧急情况而无法重新引导。在域启动时会出现紧急情况。紧急情况错误消息类似于以下消息:

panic[cpu0]/thread=10012000: tilelet_assign_cb: assigning pfns [50000, c0000)
 to mgid 1, mnodeid 1: pachunk 1 already assigned to mgid 0, mnodeid 0

解决方法:不要重新引导域。首先,停止并解除绑定域,然后重新绑定并启动域。例如:

primary# ldm stop domain
primary# ldm unbind domain
primary# ldm bind domain
primary# ldm start domain

恢复:当发生问题时,请停止并解除绑定域,然后重新绑定并启动域。

迁移期间使用了预分配的计算机描述缓冲区大小

错误号 17285745:将来宾域迁移到 SPARC T5、SPARC M5 或 SPARC M6 系统可能会导致来宾域上出现内核紧急情况,并且会出现 suspend: get stick freq failed 消息。

解决方法:在要迁移的来宾域中,向 /etc/system 文件添加以下设置。然后,重新引导来宾域。

set migmd_buf_addl_size = 0x100000
在成功的核心重映射操作后尝试调整来宾域的虚拟 CPU 的大小可能会失败

错误号 17245915:当 FMA 检测到发生故障的核心时,如果存在可用作目标的空闲核心,Logical Domains Manager 会尝试通过执行核心重映射来清除发生故障的核心。在核心重映射操作成功并且更换了发生故障的核心后,尝试使用 ldm add-vcpu 命令调整来宾域的虚拟 CPU 的大小可能会失败并且会出现 Invalid response 错误消息。

此故障是间歇性的并且取决于系统配置。

解决方法:无。

恢复:执行以下步骤向来宾域添加更多 CPU:

  1. 取消绑定来宾域。

  2. 删除所有虚拟 CPU。

  3. 重新添加虚拟 CPU。

  4. 绑定来宾域。

当修复黑名单中的 CPU 资源时,将完全恢复可靠地使用 DR 添加 CPU 的能力。

Oracle Solaris 10:当 failure-policy=reset 时,非 primary 根域在 primary 根域重新引导时挂起

错误号 17232035:当主域中 failure-policy=reset 时,从属域在引导时可能会挂起。当 failure-policy 属性具有不同的设置时,此问题不可重现。

恢复:停止与此根域关联的 I/O 域并启动非 primary 根域。

解决方法:failure-policy 属性设置为 reset 之外的值。

虚拟网络挂起阻止了域迁移

错误号 17191488:当尝试将域从 SPARC T5-8 迁移到 SPARC T4-4 系统时,会发生以下错误:

primary# ldm migrate ldg1 system2
Target Password:
Timeout waiting for domain ldg1 to suspend
Domain Migration of LDom ldg1 failed

解决方法:要避免此问题,请设置 extended-mapin-space=on


注 - 如果 ldomprimary,则此命令会启动延迟重新配置。在所有其他情况下,在执行此命令之前请停止域。
primary# ldm set-domain extended-mapin-space=on ldom
ldmpower 输出有时不包括时间戳

错误号 17188920:–-suppress–-timestamp 选项不能正确地显示时间戳值。

解决方法:在使用 –-suppress–-timestamp 选项时包括 –r 选项以显示正确的输出。

mac_do_softlso 丢弃 LSO 包

错误号 17182503: mac_do_softlso() 丢弃由 vnet_vlan_insert_tag()vnet_vlan_remove_tag() 函数生成的 LSO 包。

解决方法:要避免 VLAN 标记的 LSO 包发生此问题,请在支持虚拟网络 LSO 功能的所有域上禁用此功能。

  1. /etc/system 文件中附加以下行:

    set vnet_enable_lso = 0
    set vsw_enable_lso = 0
  2. 重新引导。

  3. 使用 mdb -k 命令验证更改。

    # mdb -k
    > vnet_enable_lso/D
    vnet_enable_lso:
    vnet_enable_lso:0   
    
    > vsw_enable_lso/D
    vsw_enable_lso:
    vsw_enable_lso: 0
迁移故障: Invalid Shutdown-group: 0

错误号 17088083:如果域的最高处理器组 ID 增大后跨过了单位 64 的倍数,则对具有八个以上虚拟 CPU 的域进行迁移可能会导致内存损坏。例如,域上的最高处理器组 ID 在迁移之前为 63,在迁移后为 64。

可使用 pginfo 命令确定域中的处理器组 ID。在域内,运行以下命令输出最高的处理器组 ID:

# pginfo -I|tr ' ' '\n'|sort -n|tail -1

解决方法:在执行迁移之前,将域中的虚拟 CPU 数目减少为八个。在迁移完成后,您可以将域中的虚拟 CPU 数恢复为原始值。

在删除虚拟功能或 PCIe 设备后,自动保存配置没有更新

错误号 17051532:从来宾域删除 PCIe 设备或虚拟功能后,自动保存配置没有更新。此问题可能会导致设备或虚拟功能在您执行自动保存恢复后(也就是当 autorecovery_policy=3 时)重新出现在来宾域中。如果您没有执行导致自动保存进行更新的另一 ldm 命令,此问题还会导致 ldm add-spconfig -r 命令失败并出现 Autosave configuration config-name is invalid 消息。

解决方法:执行以下解决方法之一:

ldmp2v convert 命令失败导致升级循环

错误号 17026219:如果在执行 ldmp2v convert 命令期间发生错误,则有时候来宾域的 boot-device 属性不会设置为来宾域的引导磁盘。此错误会导致来宾域在 Oracle Solaris 升级完成后再次从 Oracle Solaris 安装映像引导。

解决方法:从控制域内更改来宾域上的 boot-device 属性。在重新进入 Oracle Solaris Installer 时执行此更改,然后重新执行 Oracle Solaris 升级。然后,来宾域在升级完成后会从升级后的引导磁盘重新引导。

要设置引导设备,请在控制域上运行以下命令。此命令假设原始物理系统的根 (/) 文件系统位于引导磁盘的分片 0 上。如果原始系统从另一分片引导,请相应调整冒号后的字母。例如,使用 a 表示分片 0,b 表示分片 1,依此类推。

primary# ldm set-variable boot-device=disk0:a domain-name
误允许将域从运行系统固件 8.3 的 SPARC T4 系统迁移到 SPARC T5、SPARC M5 或 SPARC M6 系统

错误号 17027275:不应允许将域从运行系统固件 8.3 的 SPARC T4 系统迁移到 SPARC T5、SPARC M5 或 SPARC M6 系统。虽然迁移会成功,但是后续的内存 DR 操作会导致出现紧急情况。

解决方法:将 SPARC T4 系统上的系统固件更新到版本 8.4。请参见来宾域在 lgrp_lineage_add(mutex_enter: bad mutex, lp=10351178) 处出现紧急情况的解决方法。

来宾域在 lgrp_lineage_add(mutex_enter: bad mutex, lp=10351178) 处出现紧急情况

错误号 17020950:在将活动域从 SPARC T4 平台迁移到绑定了 8.3 版固件的 SPARC T5、SPARC M5 或 SPARC M6 平台后,执行内存动态重新配置可能会导致来宾域出现紧急情况。

解决方法:在执行迁移之前,请使用 8.4 版系统固件更新 SPARC T4 系统。然后,重新绑定域。

来宾域在 primary 域重新引导后处于过渡状态

错误号 17020481:来宾域在 primary 域重新引导后处于过渡状态 (t)。当在系统上配置了大量的虚拟功能时会出现此问题。

解决方法:要避免此问题,请多次重试 OBP 磁盘引导命令以避免从网络引导。

    在每个域上执行以下步骤:

  1. 访问域的控制台。

    primary# telnet localhost domain-name
  2. 设置 boot-device 属性。

    ok> setenv boot-device disk disk disk disk disk disk disk disk disk disk net

    您作为 boot-device 属性的值指定的 disk 条目数取决于在系统上配置的虚拟功能数目。在较小的系统上,您可能能够在该属性值中包括较少的 disk 实例。

  3. 使用 printenv 验证是否已正确设置了 boot-device 属性。

    ok> printenv
  4. 返回到 primary 域控制台。

  5. 为系统上的每个域重复步骤 1-4。

  6. 重新引导 primary 域。

    primary# shutdown -i6 -g0 -y
当虚拟网络设备驱动程序在 TxDring 模式下运行时,极少情况下会出现紧急情况

错误号 16991255:当虚拟网络设备驱动程序在 TxDring 模式下运行时,极少情况下会出现紧急情况。

解决方法:要避免此紧急情况,请将 extended-mapin-space 属性值设置为 on


注 - 如果 ldomprimary,则此命令会启动延迟重新配置。在所有其他情况下,在执行此命令之前请停止域。
primary# ldm set-domain extended-mapin-space=on ldom
只分配有一个虚拟 CPU 的域在实时迁移期间可能会出现紧急情况

错误号 16895816:迁移只分配有一个虚拟 CPU 的域可能会在来宾域的 pg_cmt_cpu_fini() 函数中出现紧急情况。

解决方法:在迁移来宾域之前至少向其分配两个虚拟 CPU。例如,使用 ldm add-vcpu 2 domain-name 命令增大分配给 domain-name 来宾域的虚拟 CPU 的数目。

当从 SPARC T5、SPARC M5 或 SPARC M6 系统向 UltraSPARC T2 或 SPARC T3 系统执行跨 CPU 迁移时,ldm migrate -n 应该会失败

错误号 16864417:当尝试在 SPARC T5、SPARC M5 或 SPARC M6 计算机与 UltraSPARC T2 或 SPARC T3 计算机之间进行迁移时,ldm migrate -n 命令不会报告失败。

解决方法:无。

恢复模式应当支持移除非 primary 根域中的 PCIe 插槽

错误号 16713362:当前,在执行恢复操作期间,无法从非 primary 根域中移除 PCIe 插槽。PCIe 插槽会保持分配给非 primary 根域。

解决方法:在恢复操作完成后,必须手动从非 primary 根域中移除 PCIe 插槽并将其分配给一个或多个合适的 I/O 域。

有关如何从非 primary 根域移除 PCIe 插槽的信息,请参见Oracle VM Server for SPARC 3.1 管理指南 中的使用非 primary 根域

对使用了由非 primary 根域拥有的 PCIe 插槽的 I/O 域进行恢复取决于 I/O 域配置:

在手动从非 primary 根域移除 PCIe 插槽后,使用 ldm add-io 命令将 PCIe 插槽添加到 I/O 域。

ldm list 没有显示物理 I/O 设备的 evacuated 属性

错误号 16617981: ldm list 输出没有显示物理 I/O 设备的 evacuated 属性。

解决方法:–p 选项与各个 ldm list 命令一起使用以显示物理 I/O 设备的 evacuated 属性。

在域迁移期间收到了无效的物理地址

错误号 16494899:在极少的情况下,域迁移会被拒绝并且在 ldmd SMF 日志中会记录以下消息:

Mar 08 17:42:12 warning: Received invalid physical address during
migration of domain rztcrmdev2: base RA: 0x400000000, offset: 0x1ffff0000,
PA: 0x87fff0000 size: 0x1001a

因为迁移是在域在源系统上挂起之前失败的,所以没有服务丢失。

因为大多数块在压缩后都变小,所以故障模式取决于域工作负荷和确切的内存内容。

恢复:虽然没有解决方法能够保证解决此问题,但执行后续迁移可能会起作用(如果工作负荷变化并因此导致内存内容变化)。您还可以尝试使用动态重新配置来修改域的内存大小。

在压力下对来宾域使用 ldm stop 命令时会出现 send_mondo_set: timeout 紧急情况

错误号 16486383:如果您直接将 PCI 设备或总线分配给来宾域,但该域没有分配 PCI 卡实际所在的 /SYS/DCU 中的核心,则可能会出现此问题。因为虚拟机管理程序代表来宾域重置了 PCI 设备,每次来宾域重新引导期间,DCU 中的核心连接到 PCI 设备的域可能会出现紧急情况。分配给非 DCU 本地来宾域的 PCI 设备数量越多,出现这种紧急情况的几率越高。

解决方法:执行以下解决方法之一:

PCIe 设备下的子设备恢复成未分配的名称

错误号 16299053:禁用 PCIe 设备后,可能会出现意外行为。虽然已禁用的 PCIe 设备仍然归域所有,但该 PCIe 设备下的子设备将恢复为未分配的名称。

解决方法:如果要在 ILOM 中禁用 PCIe 插槽,请确保未通过直接 I/O (Direct I/O, DIO) 功能将该 PCIe 插槽分配给某个域。即,在 ILOM 中禁用 PCIe 插槽之前,先要确保已将该插槽分配给相应的根域。

如果在 ILOM 中禁用 PCIe 插槽时已使用 DIO 将该 PCIe 插槽分配给某个域,请停止该域并将该设备重新分配给根域,以便保证系统行为正常。

在附加 I/O 设备驱动程序时,WARNING: ddi_intr_alloc: cannot fit into interrupt pool 指出中断供应已耗尽

错误号 16284767:在附加 I/O 设备驱动程序时,Oracle Solaris 控制台指出中断供应已耗尽:

WARNING: ddi_intr_alloc: cannot fit into interrupt pool

硬件提供了有限数目的中断,因此,Oracle Solaris 会限制每个设备可以使用多少次中断。默认限制设计为与典型系统配置的需求相匹配,不过,对于某些系统配置,可能需要调整此限制。

特别是以下情况下可能需要调整此限制:当系统划分为多个逻辑域并且当向任意来宾域分配了太多的 I/O 设备时。Oracle VM Server for SPARC 会将总的中断划分为分配给各个来宾域的较小中断集。如果向某个来宾域分配了太多的 I/O 设备,则系统的供应可能太少以致于无法向每个设备分配默认的中断限制。因此,它在完全附加所有驱动程序之前会耗尽其供应。

某些驱动程序提供了一个可选的回调例程,该例程允许 Oracle Solaris 自动调整其中断。默认限制不适用于这些驱动程序。

解决方法:使用 ::irmpools::irmreqs MDB 宏来确定如何使用中断。::irmpools 宏显示划分为池的总体中断供应。::irmreqs 宏显示哪些设备映射到每个池。对于每个设备,::irmreqs 显示是否由一个可选的回调例程强制执行默认限制、每个驱动程序请求了多少中断,以及为驱动程序分配了多少中断。

这些宏不显示有关无法附加的驱动程序的信息。不过,所显示的信息有助于计算您可以将默认限制调整到的范围。对于使用了多个中断且没有提供回调例程的任何设备,都可以通过调整默认限制来强制其使用较少的中断。将默认限制降低到这样的设备使用的数量以下可以释放一些中断供其他设备使用。

要调整默认限制,请在 /etc/system 文件中将 ddi_msix_alloc_limit 属性设置为从 18 的某个值。然后,重新引导系统以使更改生效。

为了最大限度地提高性能,请先分配较大的值,然后以较小的增量减小该值,直至系统成功引导且不出现任何警告。可使用 ::irmpools::irmreqs 宏来度量调整对所附加的所有驱动程序的影响。

例如,假设在引导来宾域中的 Oracle Solaris OS 时发出了以下警告:

WARNING: emlxs3: interrupt pool too full.
WARNING: ddi_intr_alloc: cannot fit into interrupt pool

::irmpools::irmreqs 宏显示以下信息:

# echo "::irmpools" | mdb -k
ADDR             OWNER   TYPE   SIZE  REQUESTED  RESERVED
00000400016be970 px#0    MSI/X  36    36         36

# echo "00000400016be970::irmreqs" | mdb -k
ADDR             OWNER   TYPE   CALLBACK NINTRS NREQ NAVAIL
00001000143acaa8 emlxs#0 MSI-X  No       32     8    8
00001000170199f8 emlxs#1 MSI-X  No       32     8    8
000010001400ca28 emlxs#2 MSI-X  No       32     8    8
0000100016151328 igb#3   MSI-X  No       10     3    3
0000100019549d30 igb#2   MSI-X  No       10     3    3
0000040000e0f878 igb#1   MSI-X  No       10     3    3
000010001955a5c8 igb#0   MSI-X  No       10     3    3

在此示例中,默认限制是每个设备八个中断,此中断限制不足以支持将最后的 emlxs3 设备附加到系统。假设所有 emlxs 实例的行为方式相同,则 emlxs3 可能请求了 8 个中断。

从总的池大小 36 个中断中减去由所有 igb 设备使用的 12 个中断,还剩下 24 个中断可供 emlxs 设备使用。将 24 个中断除以 4,这表明每个设备 6 个中断将能够使所有 emlxs 设备都可以附加,且具有相同的性能。因此,在 /etc/system 文件中添加以下调整:

set ddi_msix_alloc_limit = 6

当系统成功引导且未出现任何警告时,::irmpools::irmreqs 宏会显示以下更新的消息:

# echo "::irmpools" | mdb -k
ADDR             OWNER   TYPE   SIZE  REQUESTED  RESERVED
00000400018ca868 px#0    MSI/X  36    36         36
 
# echo "00000400018ca868::irmreqs" | mdb -k
ADDR             OWNER   TYPE   CALLBACK NINTRS NREQ NAVAIL
0000100016143218 emlxs#0 MSI-X  No       32     8    6
0000100014269920 emlxs#1 MSI-X  No       32     8    6
000010001540be30 emlxs#2 MSI-X  No       32     8    6
00001000140cbe10 emlxs#3 MSI-X  No       32     8    6
00001000141210c0 igb#3   MSI-X  No       10     3    3
0000100017549d38 igb#2   MSI-X  No       10     3    3
0000040001ceac40 igb#1   MSI-X  No       10     3    3
000010001acc3480 igb#0   MSI-X  No       10     3    3
SPARC M5-32 和 SPARC M6-32:panic: mpo_cpu_add: Cannot read MD

错误号 16238762:在至少有 2.4 TB 内存的 SPARC M5-32 或 SPARC M6-32 上,尝试在 primary 域中将 CPU 数量从 6 设置为 1056 时会导致内核出现紧急情况,并显示以下消息:

mpo_cpu_add: Cannot read MD

以下过程将导致出现该紧急情况:

  1. 在主机分配有 DCU 时打开电源。

    例如,将 DCU0 分配给 HOST0

  2. 创建来宾域。

  3. 将配置保存到 SP。

  4. 关闭主机电源。

  5. 为该主机分配另一个 DCU。

    例如,将 DCU1 分配给 HOST0

  6. 打开主机电源。

    固件将验证配置是否“可引导”。此验证可确保创建配置时存在的所有 CPU、内存和 I/O 仍然存在。固件还将生成一个新的 PRI 以说明整个系统的配置。

    该配置将成功启动并引导来宾域。

  7. 尝试向现有域动态添加 CPU。

    将生成一个新的计算机描述以反映正确的延迟信息,但是 Oracle Solaris OS 无法解析新信息并且出现紧急情况。

解决方法:要避免出现该紧急情况,请勿执行问题描述中的步骤。

如果您已执行这些步骤,但出现紧急情况,请执行以下步骤:

  1. 从一个较小的物理域引导已保存的配置后,执行操作。例如,从每个活动域删除一个 CPU。

  2. 重新引导该域。

  3. 取消绑定域。

  4. 重新绑定任何绑定的域。

  5. 将新配置保存到 SP。

SPARC M5-32 和 SPARC M6-32:可通过多个直接 I/O 路径访问的磁盘会出现问题

错误号 16232834:当使用 ldm add-vcpu 命令将 CPU 分配给域时,Oracle Solaris OS 可能会出现紧急情况,并显示以下消息:

panic[cpu16]/thread=c4012102c860: mpo_cpu_add: Cannot read MD

ldm add-vcpu 操作的目标域将会出现紧急情况。如果该域有额外的 CPU,则重新引导时将会恢复。

解决方法:生成配置时包含的硬件资源不要比分配给主机的资源少。

要避免该问题,请勿按问题描述中所述方式添加 CPU。或者,执行以下步骤:

  1. 在添加 DCU 之后生成新的 SP 配置。

    例如,以下命令会创建名为 new-config-more-dcus 的配置:

    primary# ldm add-config new-config-more-dcus
  2. 关闭域。

  3. 停止主机。

    -> stop /HOST
  4. 启动主机。

    -> start /HOST
重新引导 primary 域后,SR-IOV 域中的 ixgbevf 设备可能会变为禁用状态

错误号 16224353:重新引导 primary 域后,primary 域中的 ixgbevf 实例可能无法运行。

解决方法:无。

重新引导 Oracle Solaris 10 1/13 primary 域可能不会自动为虚拟功能接口激活或分配 IP 地址

错误号 16219069:在运行 Oracle Solaris 10 1/13 OS 的 primary 域上,可能不会基于 /etc/hostname.vf-interface 文件自动为虚拟功能接口激活或分配 IP 地址。

primary 域中引导或重新引导运行 Oracle Solaris 10 1/13 OS 的 SPARC T3、SPARC T4 或 SPARC T5 系统时,会出现此问题。此问题会影响在板载物理功能和插件物理功能上创建的虚拟功能。引导 Logical Domains 来宾域映像时,不会出现此问题。

仅限 Oracle Solaris 10:在重新引导或关闭期间,mutex_enter: bad mutexprimary 域中出现紧急情况

错误号 16080855:在重新引导或关闭 primary 域时,primary 域可能会出现内核紧急情况,并显示类似于以下的紧急情况消息:

panic[cpu2]/thread=c40043b818a0: mutex_enter: bad mutex, lp=c4005fa01c88
owner=c4005f70aa80 thread=c40043b818a0

000002a1075c3630 ldc:ldc_mem_rdwr_cookie+20 (c4005fa01c80,
c4004e2c2000,2a1075c37c8, 6c80000, 1, 0)
%l0-3: 00000000001356a4 0000000000136800 0000000000000380
00000000000002ff
%l4-7: 00000000001ad3f8 0000000000000004 00000000ffbffb9c
0000c4005fa01c88
000002a1075c3710 vldc:i_vldc_ioctl_write_cookie+a4 (c4004c400030,
380,ffbff898, 100003, 0, 70233400)
%l0-3: 0000000006c80000 0000000000156dc8 0000000000000380
0000000000100003
%l4-7: 00000000702337b0 000002a1075c37c8 0000000000040000
0000000000000000
000002a1075c37f0 vldc:vldc_ioctl+1a4 (3101, c4004c400030,
ffbff898,c4004c400000, c4004c438030, 0)
%l0-3: 0000000000100003 0000000000000000 000000007b340400
0000c4004c438030
%l4-7: 0000c4004c400030 0000000000000000 0000000000000000
0000000000000000
000002a1075c38a0 genunix:fop_ioctl+d0 (c4004d327800, 0, ffbff898,
100003,c4004384f718, 2a1075c3acc)
%l0-3: 0000000000003103 0000000000100003 000000000133ce94
0000c4002352a480
%l4-7: 0000000000000000 0000000000000002 00000000000000c0
0000000000000000
000002a1075c3970 genunix:ioctl+16c (3, 3103, ffbff898, 3, 134d50, 0)
%l0-3: 0000c40040e00a50 000000000000c6d3 0000000000000003
0000030000002000
%l4-7: 0000000000000003 0000000000000004 0000000000000000
0000000000000000

恢复:允许 primary 域重新引导。如果已将 primary 域配置为在崩溃后不重新引导,请手动引导 primary 域。

SPARC M5-32 和 SPARC M6-32:LSI-SAS 控制器不正确地导出为支持 SR-IOV

错误号 16071170:在 SPARC M5-32 或 SPARC M6-32 系统上,内部 SAS 控制器被导出为支持 SR-IOV 的控制器,尽管这些卡不支持 SR-IOV。

当尝试在这些卡上创建物理功能时,Oracle VM Server for SPARC 日志将显示以下消息:

Dec 11 04:27:54 warning: Dropping pf
pci@d00/pci@1/pci@0/pci@0/pci@0/pci@4/LSI,sas@0: no IOV capable driver
Dec 11 04:27:54 warning: Dropping pf
pci@d80/pci@1/pci@0/pci@c/pci@0/pci@4/LSI,sas@0: no IOV capable driver
Dec 11 04:27:54 warning: Dropping pf
pci@c00/pci@1/pci@0/pci@c/pci@0/pci@4/LSI,sas@0: no IOV capable driver
Dec 11 04:27:54 warning: Dropping pf
pci@e00/pci@1/pci@0/pci@0/pci@0/pci@4/LSI,sas@0: no IOV capable driver

该系统有四个 LSI SAS 控制器端口,每个位于 SPARC M5-32 和 SPARC M6-32 组合件的一个 IOU 中。每个端口都会报告一次此错误。

解决方法:可以忽略这些消息。这些消息只说明系统上的 LSI-SAS 控制器设备可以支持 SR-IOV,但此硬件不提供 SR-IOV 支持。

SPARC T5-8:对于某些 ldm 列表命令,运行时间数据显示了值 0

错误号 16068376:在具有大约 128 个域的 T5-8 上,诸如 ldm list 之类的 ldm 命令会将所有域的运行时间显示为 0 秒。

解决方法:登录到域并使用 uptime 命令来确定域的运行时间。

在 SPARC T5-1B 系统的 primary 域中,无法为 sxge 虚拟功能设置大型 MTU

错误号 16059331:sxge 驱动程序无法为其 primary 域中的虚拟功能正确设置大型 MTU。

解决方法:手动修改 /kernel/drv/sxge.conf 文件,以在来宾域中的 sxge 虚拟功能接口上设置大型 MTU。

ldmd 无法设置 sxge 设备的 mac-addralt-mac-addrs 属性值

错误号 15974640:ldm 命令无法正确设置 sxge 设备的 mac-addralt-mac-addrs 属性值因此,ldmd 守护进程将报告 MAC 地址不一致。此外,任何基于 VNIC MAC 地址的链路聚合都将失败。

SPARC T5-1B 系统上 sxge 设备的 ldm list-io -d 输出缺少两个属性

错误号 15974547:在包含 sxge 的 SPARC T5-1B 系统上运行 ldm list-io -d PF-device 时,输出中不显示 max-vlansmax-vf-mtu 属性。这些属性在包含 ixgbe 的 SPARC T5-1B 系统以及非刀片系统上是存在的。

缺少 max-vlans 属性值。该值应该为 0,因为 sxge 设备不支持硬件 VLAN 标记。max-vf-mtu 属性值已修复为 1500,这将阻止物理功能驱动程序为虚拟功能设置大型 MTU。

ldm 无法从来宾域清除出现故障的核心

错误号 15962837:当发生芯片级故障时,核心清除无法完成。在发生核心故障后执行的清除能够按预期方式工作,但是当尝试撤消整个 CMP 节点时,针对芯片级故障的核心清除无法完成。

解决方法:无。在对芯片级故障进行诊断时,请制定芯片更换计划。

将内存减少至低于四 GB 时内存 DR 操作会挂起

错误号 15942036:如果执行内存 DR 操作将内存减少至低于四 GB,操作可能会永远挂起。如果对该域发出 ldm cancel-op memdr 命令,会发出错误的消息:

The memory removal operation has completed. You cannot cancel this operation.

尽管出现该消息,内存 DR 操作仍会挂起,您可能无法对该来宾域执行其他 ldmd 操作。

解决方法:不要尝试在任何域中将内存减少至低于四 GB。如果已经处于此状态,请发出 ldm stop -f 命令,或登录到该域然后重新引导。

大量虚拟 CPU 的 CPU DR 操作可能会显示为失败

错误号 15826354:非常大数量 CPU 的 CPU 动态重新配置 (dynamic reconfiguration, DR) 导致 ldmd 守护进程返回一个错误。虽然 ldmd 超时了,但 DR 操作仍在后台继续执行,并终将成功。不过,ldmd 不再与生成的域保持同步,后续的 DR 操作可能不被允许。

例如:

# ldm ls
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    7     20G      2.7%  0.4%  1h 41m
ldg0             active     -n----  5000    761   16G       75%   51%  6m

# ldm rm-vcpu 760 ldg0
Request to remove cpu(s) sent, but no valid response received
VCPU(s) will remain allocated to the domain, but might
not be available to the guest OS
Resource removal failed
 
# ldm set-vcpu 1 ldg0
Busy executing earlier command; please try again later.
Unable to remove the requested VCPUs from domain ldg0
Resource modification failed
 
# ldm ls
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    7     20G      0.9%  0.1%  1h 45m
ldg0             active     -n----  5000    761   16G      100%  0.0%  10m

解决方法:等待几分钟后再次运行 ldm set-vcpu 命令:

# ldm set-vcpu 1 ldg0
# ldm ls
NAME             STATE      FLAGS   CONS    VCPU  MEMORY   UTIL  NORM  UPTIME
primary          active     -n-cv-  UART    7     20G      0.9%  0.1%  1h 50m
ldg0             active     -n----  5000    1     16G       52%  0.0%  15m

请注意,760 超出了建议的最大值。

具有 HIO 虚拟网络且 cpu-arch=generic 的来宾域迁移发生超时并一直等待该域暂停

错误号 15825538:在配置有混合网络 I/O 接口 (mode=hybrid) 且启用了跨 CPU 迁移 (cpu-arch=generic) 的逻辑域上,如果执行安全实时迁移 (ldm migrate),该迁移可能超时并使该域处于暂停状态。

恢复:重新启动该逻辑域。

解决方法:进行安全的跨 CPU 实时迁移时不要使用混合 I/O 虚拟网络设备。

SPARC T4-4:无法绑定来宾域

 

错误号 15825330: 在某些仅具有单个处理器板的 SPARC T4-4 配置上,Oracle VM Server for SPARC 在启动时似乎处于挂起状态。

解决方法:确保处理器板始终占用处理器 0 和 1 的插槽。在此类配置中重新启动系统可使 Oracle VM Server for SPARC 软件启动。

将 threading 属性值从 max-throughput 更改为 max-ipc 时来宾域出现紧急情况

错误号 15821246:在运行 Oracle Solaris 11.1 OS 的系统上,将已迁移域上的 threading 属性值从 max-ipc 更改为 max-throughput 会导致该来宾域上出现紧急情况。

解决方法:不要更改已迁移来宾域的 threading 状态,直到重新引导该域。

在具有两个活动直接 I/O 域的情况下控制域在重新引导时挂起

错误号 15820741:在具有两个使用直接 I/O 配置的域的 Oracle Solaris 11.1 系统上,重新引导控制域时该域可能会挂起。

恢复:要从重新引导挂起恢复,通过在 SP 上发出以下命令来重置控制域:

-> reset -f /HOST/domain/control
内存 DR 添加部分成功时不显示错误消息

错误号 15812823:在可用内存较少的情况下,由于内存大小的原因并非所有内存块都可以用作内存 DR 操作的一部分。但是,这些内存块都包括在可用内存量中。这种情况可能会导致向域中添加的内存量小于所预期的。如果发生这种情况,不显示任何错误消息。

解决方法:无。

对包含混合 I/O 网络设备的来宾域解除绑定或进行迁移时,primary 域或来宾域出现紧急情况

错误号 15803617:在解除绑定或实时迁移操作过程中,如果域配置有混合 I/O 虚拟网络设备,则 primary 域或活动的来宾域可能会出现紧急情况。

恢复:重新启动受影响的域。

解决方法:不使用混合 I/O 虚拟网络设备。

从 XML 文件重新创建具有 PCIe 虚拟功能的域失败

错误号 15783851:尝试从错误地表示虚拟功能约束的 XML 文件重新创建配置时,可能会遇到问题。

使用 ldm list-constraints -x 命令保存具有 PCIe 虚拟功能的域的配置时,会发生此问题。

如果稍后使用 ldm add-domain -i 命令重新创建该域,原始虚拟功能将不复存在并且域绑定尝试将失败,同时显示以下错误消息:

No free matching PCIe device...

即使创建缺少的虚拟功能,另一个域绑定尝试也会失败,同时显示相同的错误消息,因为这些虚拟功能被 ldm add-domain 命令错误地分类为 PCIe 设备。

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

  1. 使用 ldm list-io 命令保存有关虚拟功能的信息。

  2. 使用 ldm rm-dom 命令销毁受影响的域。

  3. 使用 ldm create-vf 命令创建所有必需的虚拟功能。

  4. 使用 ldm 命令重新构建域。

使用 ldm add-io 命令添加每个虚拟功能时,会将其正确地分类为虚拟功能设备,从而可以绑定域。

有关重新构建使用虚拟功能的域的信息,请参见ldm init-system 命令可能无法正确恢复已执行了物理 I/O 更改的域配置

将控制域从使用整体核心更改为使用部分核心时发出不正确的错误消息

错误号 15783608:将控制域从使用物理上受约束的核心更改为使用不受约束的 CPU 资源时,可能会显示以下多余消息:

Whole-core partitioning has been removed from domain primary,because
dynamic reconfiguration has failed and the domain is now configured
with a partial CPU core.

解决方法:可以忽略此消息。

ldm init-system 命令可能无法正确恢复已执行了物理 I/O 更改的域配置

错误号 15783031:当使用 ldm init-system 命令恢复已使用了直接 I/O 或 SR-IOV 操作的域时,可能会遇到问题。

要确保系统保持在未发生上述任何操作的状态下,请参见 Using the ldm init-system Command to Restore Domains on Which Physical I/O Changes Have Been Made(使用 ldm init-system 命令恢复已执行了物理 I/O 更改的域)。

您尝试同时修改许多域时 Logical Domains Manager 可能会崩溃并重新启动

错误号 15782994:您尝试可以影响许多域的配置的操作时,Logical Domains Manager 可能会崩溃并重新启动。如果同一虚拟交换机中的许多虚拟网络设备在许多域中存在,则您尝试更改与虚拟网络配置相关的任何设置时,可能会出现此问题。通常,如果大约 90 个或更多的域具有连接到同一虚拟交换机的虚拟网络设备并且 inter-vnet-link 属性处于启用状态(默认行为),则会出现此问题。通过在 ldmd 日志文件中查找以下消息以及在 /var/opt/SUNWldm 目录中查找 core 文件来确认症状:

Frag alloc for 'domain-name'/MD memory of size 0x80000 failed

解决方法:避免创建连接到同一虚拟交换机的许多虚拟网络设备。如果打算这样做,请在虚拟交换机上将 inter-vnet-link 属性设置为 off。请注意,此选项可能会对来宾域之间的网络性能产生负面影响。

ldm list -o 命令不再接受 format 缩写

错误号 15781142:ldm list -o format 命令不再接受 format 的缩写。

虽然 Oracle VM Server for SPARC 3.0 软件允许您使用 ldm list -o net 命令显示网络的相关信息,但此类缩写已从 Oracle VM Server for SPARC 3.1 软件中删除。在 Oracle VM Server for SPARC 3.1 中,您必须在命令 ldm list -o network 中使用完整版本 format

解决方法:使用 ldm(1M) 手册页中所指定的格式名称。

控制域需要系统中的最低核心

错误号 15778392:控制域需要系统中的最低核心。因此,如果核心 ID 0 是最低核心,则在您希望对控制域应用整体核心约束时,该核心无法与任何其他域共享。

例如,如果系统中的最低核心为核心 ID 0,控制域应该与以下输出类似:

# ldm ls -o cpu primary
NAME
primary

VCPU
VID    PID    CID    UTIL STRAND
0      0      0      0.4%   100%
1      1      0      0.2%   100%
2      2      0      0.1%   100%
3      3      0      0.2%   100%
4      4      0      0.3%   100%
5      5      0      0.2%   100%
6      6      0      0.1%   100%
7      7      0      0.1%   100%
取消迁移后,在目标系统上运行的 ldm 命令不响应

错误号 15776752:如果取消实时迁移,在目标上创建的域实例的内存内容必须由虚拟机管理程序“清理”。此清理过程是出于安全原因而执行的,必须先完成该过程,然后内存才能返回到可用内存池。执行此清理时,ldm 命令变为不响应。因此,Logical Domains Manager 看起来处于挂起状态。

恢复:必须等待此清理请求完成,然后才能尝试运行其他 ldm 命令。此过程可能要花费较长时间。例如,具有 500 GB 内存的来宾域在 SPARC T4 服务器上可能最多花费 7 分钟完成此过程,在 SPARC T3 服务器上可能最多花费 25 分钟完成此过程。

某些 Emulex 卡在分配给 I/O 域后不工作

错误号 15776319:在控制域和一个 I/O 域上运行 Oracle Solaris OS 的系统中,分配给该 I/O 域的某些 Emulex 卡无法正常运行,因为这些卡不接收中断。但是,将这些卡分配给控制域时,它们可以正常工作。

解决方法:无。

在迁移到 SPARC T4 系统过程中运行 cputrack 命令时,来宾域出现紧急情况

错误号 15776123:将来宾域迁移到 SPARC T4 系统时,如果对该域运行 cputrack 命令,则迁移后目标计算机上的来宾域可能会出现紧急情况。

解决方法:在将来宾域迁移到 SPARC T4 系统期间,不要运行 cputrack 命令。

Oracle Solaris 11:DRM 窃取操作报告 Oracle Solaris DR 失败并重试

错误号 15775668:具有较高优先级策略的域可以从具有较低优先级策略的域窃取虚拟 CPU 资源。在此“窃取”操作执行过程中,在 ldmd 日志中可能会每隔 10 秒显示一次以下警告消息:

warning: Unable to unconfigure CPUs out of guest domain-name

解决方法:可以忽略这些误导消息。

限制可以分配给域的最大虚拟功能数

错误号 15775637:I/O 域限制每个根联合体的可用中断资源数。

在 SPARC T3 和 SPARC T4 系统上,该限制大约为 63 个 MSI/X 向量。每个 igb 虚拟功能使用三个中断。ixgbe 虚拟功能使用两个中断。

如果向域分配大量虚拟功能,该域将耗尽系统资源来支持这些设备。可能会显示类似如下的消息:

WARNING: ixgbevf32: interrupt pool too full.
WARNING: ddi_intr_alloc: cannot fit into interrupt pool
进行跨 CPU 迁移的来宾域在迁移完成后报告的运行时间不正确

错误号 15775055:在具有不同 CPU 频率的两台计算机之间迁移域后,ldm list 命令报告的运行时间可能不正确。出现这种不正确结果是因为运行时间是相对于运行该域的计算机的 STICK 频率来计算的。如果源计算机和目标计算机的 STICK 频率不同,运行时间的度量就会显得不正确。

来宾域自身报告和显示的运行时间是正确的。此外,在来宾域中 Oracle Solaris OS 执行的任何记帐都是正确的。

Oracle Solaris 10:使用 Intel Dual Port Ethernet Controller X540 卡引导时,ixgbe 驱动程序可能会导致出现紧急情况

错误号 15773603:使用 Intel dual port Ethernet Controller X540 卡引导时,Oracle Solaris 10 ixgbe 驱动程序可能会导致出现系统紧急情况。出现此紧急情况是因为该驱动程序具有高优先级计时器,其阻止连接其他驱动程序。

解决方法:重新引导系统。

来宾域控制台在 SPARC T4 系统上随机挂起

错误号 15771384:如果在绑定控制台期间或之前重复尝试连接到控制台,则域的来宾控制台可能会冻结。例如,如果您在正在向计算机迁移某个域时使用自动化脚本来抓取控制台,则可能会发生此情况。

解决方法:要解除冻结控制台,请在承载着该域的控制台集中器的域上(通常为控制域)执行以下命令:

primary# svcadm disable vntsd
primary# svcadm enable vntsd
销毁所有虚拟功能并将插槽返回到根域无法恢复根联合体资源

错误号 15765858:销毁所有虚拟功能并将插槽返回到根域后,根联合体上的资源未恢复。

解决方法:将特定 PCIe 总线的 iov 选项设置为 off

primary# ldm start-reconf primary
primary# ldm set-io iov=off pci_0
应该对具有 PCIe 到 PCI 桥的 PCIe 卡禁用 ldm remove-io

错误号 15761509:只使用支持直接 I/O (Direct I/O, DIO) 功能的 PCIe 卡,在此支持文档 中列出了这类卡。

解决方法:使用 ldm add-io 命令重新向 primary 域添加卡。

如果在 ldm start 命令后立即发出 ldm stop 命令,后者可能会失败

错误号 15759601:如果在 ldm start 命令后立即发出 ldm stop 命令,ldm stop 命令可能会失败,并显示以下错误:

LDom domain stop notification failed

解决方法:重新发出 ldm stop 命令。

init-system 无法从保存的 XML 文件为来宾域恢复指定的核心约束

错误号 15758883:ldm init-system 命令无法从保存的 XML 文件为来宾域恢复指定的 CPU 核心约束。

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

  1. 为主域创建 XML 文件。

    # ldm ls-constraints -x primary > primary.xml
  2. 为来宾域创建 XML 文件。

    # ldm ls-constraints -x ldom[,ldom][,...] > guest.xml
  3. 对系统执行关开机循环并以工厂默认配置进行引导。

  4. primary 域应用 XML 配置。

    # ldm init-system -r -i primary.xml
  5. 重新引导。

  6. 向来宾域应用 XML 配置。

    # ldm init-system -f -i guest.xml
重新引导分配了大量虚拟功能的 primary 域时系统出现紧急情况

错误号 15750727:重新引导分配有大量虚拟功能的 primary 域时,系统可能会出现紧急情况。

解决方法:执行以下解决方法之一:

使用部分核心的 primary 域无法进行整体核心 DR 转换

错误号 15748348:primary 域与其他域共享最低物理核心(通常为 0)时,尝试为 primary 域设置整体核心约束失败。

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

  1. 确定域共享的最低绑定核心。

    # ldm list -o cpu
  2. 从除 primary 域之外的所有域解除绑定最低核心的所有 CPU 线程。

    因此,最低核心的 CPU 线程不再共享,可以绑定到 primary 域。

  3. 通过执行以下操作之一设置整体核心约束:

    • 通过使用 ldm set-vcpu -c 命令将 CPU 线程绑定到 primary 域并设置整体核心约束。

    • 使用 ldm set-core 命令在一个步骤中绑定 CPU 线程并设置整体核心约束。

引导后,ldm list-io 命令显示 UNK 或 INV 状态

错误号 15738561:如果在引导 primary 域后立即运行 ldm list-io 命令,该命令可能会对 PCIe 插槽和 SR-IOV 虚拟功能显示 UNK 或 INV 状态。Oracle Solaris OS 中 Logical Domains 代理回复延迟会导致此问题。

只在少数几个系统上报告了此问题。

解决方法:从 Logical Domains 代理收到信息后,自动更新 PCIe 插槽和虚拟功能的状态。

在 SPARC T4-4 系统上迁移内存非常大的域会导致目标系统上的域出现紧急情况

错误号 15731303:避免迁移具有 500 GB 以上内存的域。使用 ldm list -o mem 命令查看域的内存配置。如果一些内存配置具有多个内存块并且这些内存块总和超过 500 GB,则这些内存配置可能会出现紧急情况,并产生类似下面的堆栈:

panic[cpu21]/thread=2a100a5dca0:
BAD TRAP: type=30 rp=2a100a5c930 addr=6f696e740a232000 mmu_fsr=10009

sched:data access exception: MMU sfsr=10009: Data or instruction address
out of range context 0x1

pid=0, pc=0x1076e2c, sp=0x2a100a5c1d1, tstate=0x4480001607, context=0x0
g1-g7: 80000001, 0, 80a5dca0, 0, 0, 0, 2a100a5dca0

000002a100a5c650 unix:die+9c (30, 2a100a5c930, 6f696e740a232000, 10009,
2a100a5c710, 10000)
000002a100a5c730 unix:trap+75c (2a100a5c930, 0, 0, 10009, 30027b44000,
2a100a5dca0)
000002a100a5c880 unix:ktl0+64 (7022d6dba40, 0, 1, 2, 2, 18a8800)
000002a100a5c9d0 unix:page_trylock+38 (6f696e740a232020, 1, 6f69639927eda164,
7022d6dba40, 13, 1913800)
000002a100a5ca80 unix:page_trylock_cons+c (6f696e740a232020, 1, 1, 5,
7000e697c00, 6f696e740a232020)
000002a100a5cb30 unix:page_get_mnode_freelist+19c (701ee696d00, 12, 1, 0, 19, 3)
000002a100a5cc80 unix:page_get_cachelist+318 (12, 1849fe0, ffffffffffffffff, 3,
0, 1)
000002a100a5cd70 unix:page_create_va+284 (192aec0, 300ddbc6000, 0, 0,
2a100a5cf00, 300ddbc6000)
000002a100a5ce50 unix:segkmem_page_create+84 (18a8400, 2000, 1, 198e0d0, 1000,
11)
000002a100a5cf60 unix:segkmem_xalloc+b0 (30000002d98, 0, 2000, 300ddbc6000, 0,
107e290)
000002a100a5d020 unix:segkmem_alloc_vn+c0 (30000002d98, 2000, 107e000, 198e0d0,
30000000000, 18a8800)
000002a100a5d0e0 genunix:vmem_xalloc+5c8 (30000004000, 2000, 0, 0, 80000, 0)
000002a100a5d260 genunix:vmem_alloc+1d4 (30000004000, 2000, 1, 2000,
30000004020, 1)
000002a100a5d320 genunix:kmem_slab_create+44 (30000056008, 1, 300ddbc4000,
18a6840, 30000056200, 30000004000)
000002a100a5d3f0 genunix:kmem_slab_alloc+30 (30000056008, 1, ffffffffffffffff,
0, 300000560e0, 30000056148)
000002a100a5d4a0 genunix:kmem_cache_alloc+2dc (30000056008, 1, 0, b9,
fffffffffffffffe, 2006)
000002a100a5d550 genunix:kmem_cpucache_magazine_alloc+64 (3000245a740,
3000245a008, 7, 6028f283750, 3000245a1d8, 193a880)
000002a100a5d600 genunix:kmem_cache_free+180 (3000245a008, 6028f2901c0, 7, 7,
7, 3000245a740)
000002a100a5d6b0 ldc:vio_destroy_mblks+c0 (6028efe8988, 800, 0, 200, 19de0c0, 0)
000002a100a5d760 ldc:vio_destroy_multipools+30 (6028f1542b0, 2a100a5d8c8, 40,
0, 10, 30000282240)
000002a100a5d810 vnet:vgen_unmap_rx_dring+18 (6028f154040, 0, 6028f1a3cc0, a00,
200, 6028f1abc00)
000002a100a5d8d0 vnet:vgen_process_reset+254 (1, 6028f154048, 6028f154068,
6028f154060, 6028f154050, 6028f154058)
000002a100a5d9b0 genunix:taskq_thread+3b8 (6028ed73908, 6028ed738a0, 18a6840,
6028ed738d2, e4f746ec17d8, 6028ed738d4)

解决方法:避免迁移具有 500 GB 以上内存的域。

从来宾域中删除大量 CPU 会失败

错误号 15726205:尝试从来宾域中删除大量 CPU 时会显示以下错误消息:

Request to remove cpu(s) sent, but no valid response received
VCPU(s) will remain allocated to the domain, but might
not be available to the guest OS
Resource modification failed

解决方法:从域中删除 100 个以上 CPU 之前停止来宾域。

无法使用 Oracle Solaris 热插拔操作来热删除 PCIe 端点设备

错误号 15721872:在使用 ldm rm-io 命令从 primary 域中删除某个 PCIe 端点设备之后,您无法通过 Oracle Solaris 热插拔操作“热删除”该设备。有关替换或删除 PCIe 端点设备的信息,请参见Oracle VM Server for SPARC 3.1 管理指南 中的更改 PCIe 硬件

迁移包含混合 I/O 和虚拟 I/O 虚拟网络设备的来宾域时,nxge 出现紧急情况

错误号 15710957:如果高负载的来宾域具有混合 I/O 配置并且您尝试迁移该域,nxge 可能会出现紧急情况。

解决方法:将以下行添加到 primary 域和作为该域的混合 I/O 配置一部分的任何服务域中的 /etc/system 文件:

set vsw:vsw_hio_max_cleanup_retries = 0x200
迁移过程中丢失共享 NFS 资源时所有 ldm 命令挂起

错误号 15708982:已启动的或正在进行中的迁移,或任何 ldm 命令永远挂起。当要迁移的域使用了来自其他系统的共享文件系统,而该文件系统已不再共享时,会出现此情况。

解决方法:使共享文件系统可以重新访问。

如果系统日志服务不联机,Logical Domains 代理服务就无法联机

错误号 15707426:如果系统日志服务 svc:/system/system-log 启动失败且未能联机,则 Logical Domains 代理服务将不会联机。Logical Domains 代理服务没有联机时,virtinfoldm add-vswldm add-vdsdevldm list-io 命令可能无法按预期工作。

解决方法:确保 svc:/ldoms/agents:default 服务已启用且已联机:

# svcs -l svc:/ldoms/agents:default

如果 svc:/ldoms/agents:default 服务处于脱机状态,请验证该服务是否已启用,并且所有相关服务是否处于联机状态。

内核死锁导致计算机在迁移过程中挂起

错误号 15704500:迁移活动来宾域可能会挂起源计算机并导致其变为不响应。出现此问题时,将向控制台和 /var/adm/messages 文件写入以下消息:

vcc: i_vcc_ldc_fini: cannot close channel 15

vcc: [ID 815110 kern.notice] i_vcc_ldc_fini: cannot
close channel 15

请注意,显示的通道号是 Oracle Solaris 内部通道号,每个警告消息的内部通道号可能会各不相同。

解决方法:迁移域之前,与来宾域的控制台断开连接。

恢复:对源计算机执行关开机循环。

DRM 和 ldm list 输出显示的虚拟 CPU 数与来宾域中的实际虚拟 CPU 数不符

错误号 15702475:如果已装入域的 DRM 策略在 CPU 计数大幅减少后过期,Oracle VM Server for SPARC 日志中可能会出现 No response 消息。ldm list 输出中显示的分配给域的 CPU 资源多于 psrinfo 输出中显示的数量。

解决方法:使用 ldm set-vcpu 命令将域中的 CPU 数重置为 psrinfo 输出中显示的值。

对依赖于目标计算机上的非活动主域的域进行实时迁移导致 ldmd 发生故障并具有分段故障

错误号 15701865:如果尝试对依赖于目标计算机上的非活动域的域进行实时迁移,ldmd 守护进程将发生故障并具有分段故障,并且目标计算机上的域将重新启动。虽然仍可以执行迁移,但将不是实时迁移。

删除策略或策略过期后,DRM 无法为迁移后的域恢复默认数量的虚拟 CPU

错误号 15701853:在 DRM 策略生效时执行域迁移后,如果 DRM 策略过期或将其从迁移后的域中删除,DRM 将无法为该域恢复原始数量的虚拟 CPU。

解决方法:如果在 DRM 策略有效时迁移域,并且随后 DRM 策略过期或被删除,请重置虚拟 CPU 的数量。使用 ldm set-vcpu 命令在域中将虚拟 CPU 的数量设置为原始值。

DR 过程中虚拟 CPU 超时失败

错误号 15701258:对包含超过 100 个虚拟 CPU 和一些加密单元的来宾域运行 ldm set-vcpu 1 命令无法删除虚拟 CPU。未能删除虚拟 CPU 是由于 DR 超时错误。加密单元可以成功删除。

解决方法:使用 ldm rm-vcpu 命令从来宾域中删除除一个虚拟 CPU 之外的所有虚拟 CPU。一次删除的虚拟 CPU 数不要超过 100 个。

当系统 MAC 地址与其他 MAC 地址发生冲突时,不报告迁移失败原因

错误号 15699763:如果域中包含重复的 MAC 地址,则无法迁移该域。通常,如果迁移由于此原因失败,失败消息会显示重复的 MAC 地址。但在极少数情况下,此失败消息可能不会报告重复的 MAC 地址。

# ldm migrate ldg2 system2
Target Password:
Domain Migration of LDom ldg2 failed

解决方法:确保目标计算机上的 MAC 地址是唯一的。

“相反方向”的同时迁移操作可能会导致 ldm 挂起

错误号 15696986:如果在“相反方向”上同时发出两个 ldm migrate 命令,这两个命令可能会挂起,永不会完成。如果启动了从计算机 A 到计算机 B 的迁移,同时又启动了从计算机 B 到计算机 A 的迁移,就会出现相反方向操作。

即使迁移过程是使用 –n 选项启动的模拟运行,也会导致挂起。出现此问题时,所有其他 ldm 命令均可能挂起。

解决方法:无。

从控制域中删除大量 CPU 会失败

错误号 15677358:使用延迟重新配置(而不是动态重新配置)从控制域(也称为 primary 域)中删除超过 100 个 CPU。执行以下步骤:

  1. 使用 ldm start-reconf primary 命令将控制域置于延迟重新配置模式下。

  2. 删除所需数量的 CPU 资源。

    如果删除 CPU 资源时出错,在控制域仍处于延迟重新配置状态时,不要尝试其他删除 CPU 的请求。如果尝试,命令将失败(请参见在延迟重新配置期间,仅允许执行一个 CPU 配置操作)。相反,通过使用 ldm cancel-reconf 命令撤消延迟重新配置,然后重新启动。

  3. 重新引导控制域。

设置了弹性策略并且在运行 Oracle Solaris 10 8/11 OS 的系统可能会挂起

解决方法:应用 ID 为 147149-01 的修补程序。

pkgadd 无法在 /var/svc/manifest/platform/sun4v/ldmd.xml 上设置 ACL 项

错误号 15668881:使用 pkgadd 命令从某个目录(该目录通过 NFS 从 Sun ZFS 存储设备导出)安装 SUNWldm.v 软件包时,会显示以下错误消息:

cp: failed to set acl entries on /var/svc/manifest/platform/sun4v/ldmd.xml

解决方法:忽略此消息。

SPARC T3-1:可通过多个直接 I/O 路径访问的磁盘会出现问题

错误号 15668368:可以在 SPARC T3-1 系统上安装双端口磁盘,这些磁盘可通过两个不同的直接 I/O 设备访问。在这种情况下,如果将这两个直接 I/O 设备分配给不同的域,可能会导致这些磁盘供这两个域使用并在实际使用当中相互影响。

解决方法:不将能够访问同一组磁盘的直接 I/O 设备指定给不同的 I/O 域。要确定 SPARC T3-1 系统上是否有双端口磁盘,请对 SP 运行以下命令:

-> show /SYS/SASBP

如果输出中包含以下 fru_description 值,则说明相应的系统上有双端口磁盘:

fru_description = BD,SAS2,16DSK,LOUISE

如果发现系统中存在双端口磁盘,请确保始终将下面的两个直接 I/O 设备分配给同一个域:

pci@400/pci@1/pci@0/pci@4  /SYS/MB/SASHBA0
pci@400/pci@2/pci@0/pci@4  /SYS/MB/SASHBA1
对多个已激活的 NIU nxge 实例执行内存 DR 删除操作可能会无限期挂起而且永远无法完成

错误号 15667770:当在域上激活多个 NIU nxge 实例时,用来从域中删除内存的 ldm rm-memldm set-mem 命令可能永远无法完成。要确定在执行内存删除操作期间是否出现此问题,请使用 ldm list -o status 命令监视内存删除操作的进度。如果进度百分比在几分钟内一直保持恒定,则说明您可能遇到了此问题。

解决方法:取消 ldm rm-memldm set-mem 命令,并检查是否删除了足够多的内存。如果没有,则随后发出的用来删除较少量内存的内存删除命令可能会成功完成。

    如果在 primary 域上出现此问题,请执行以下操作:

  1. 在 primary 域上启动延迟重新配置操作。

    # ldm start-reconf primary
  2. 为该域指定所需的内存量。

  3. 重新引导 primary 域。

如果此问题出现在另一个域上,请先停止这个有问题的域,然后再调整为该域指定的内存量。

对具有主-从关系的域使用 ldm stop -a 命令会在从域中设置 stopping 标志

错误号 15664666:在创建了重置依赖性之后,ldm stop -a 命令可能会导致具有重置依赖性的域重新启动(而不只是停止)。

解决方法:首先向主域发出 ldm stop 命令,然后向从域发出 ldm stop 命令。如果最初停止从域时导致故障,请向从域发出 ldm stop -f 命令。

迁移启用了默认 DRM 策略的域导致为目标域指定所有可用的 CPU

错误号 15655513:在迁移处于活动状态的域之后,迁移后的域中的 CPU 利用率可能会在短时间内显著提高。如果在迁移时,对于该域存在有效的动态资源管理 (Dynamic Resource Managment, DRM) 策略,Logical Domains Manager 可能会开始添加 CPU。特别是,如果在添加策略时未指定 vcpu-maxattack 属性,则默认值 unlimited 会导致将目标计算机中所有未绑定的 CPU 添加到迁移后的域中。

恢复:没有必要执行恢复。当 CPU 利用率下降到低于 DRM 策略所指定的上限之后,Logical Domains Manager 会自动删除 CPU。

某个正在使用中的 MAC 地址可以被重新分配

错误号 15655199:有时检测不到正在使用中的 MAC 地址,这些地址被错误地重新分配。

解决方法:手动确保正在使用中的 MAC 地址不被重新分配。

ldmconfig 无法在 SP 上创建域配置

错误号 15654965:ldmconfig 脚本无法在服务处理器 (service processor, SP) 上正确创建存储逻辑域配置。

    解决方法:ldmconfig 脚本完成且域重新引导后,不要对系统执行关开机循环。而应该执行以下手动步骤:

  1. 将配置添加到 SP。

    # ldm add-spconfig new-config-name
  2. 从 SP 中删除 primary-with-clients 配置。

    # ldm rm-spconfig primary-with-clients
  3. 关闭系统电源,然后再打开系统电源。

如果在系统关开机循环之前未执行这些步骤,primary-with-client 配置的存在将导致域变为不活动。在这种情况下,必须手动绑定每个域,然后通过运行 ldm start -a 命令启动它们。引导来宾域后,重复此序列会使来宾域在关开机循环后自动引导。

cpu0 处于脱机状态时,可能会阻止对 Oracle Solaris 域进行非协同迁移

错误号 15653424:如果处于活动状态的域运行的发行版低于 Oracle Solaris 10 10/09 OS 发行版,而且该域中编号最小的 CPU 处于 offline 状态,则在迁移该域时可能会失败。当 Logical Domains Manager 使用 CPU DR 将该域缩减到包含单个 CPU 时,迁移操作会失败。在这种情况下,Logical Domains Manager 将尝试删除该域中除编号最小的 CPU 以外的所有 CPU,但是,由于编号最小的 CPU 处于脱机状态,因此迁移操作会失败。

解决方法:在尝试执行迁移之前,请确保域中编号最小的 CPU 处于 online 状态。

在取消迁移之后,内存 DR 处于禁用状态

错误号 15646293:在执行迁移操作过程中,暂停 Oracle Solaris 10 9/10 域之后,内存动态重新配置 (Dynamic Reconfiguration, DR) 会被禁用。此操作不仅在迁移成功时发生,在取消迁移后也会发生(尽管域仍保留在源计算机上)。

有时,对虚拟网络设备的 MTU 值执行动态重新配置会失败

错误号 15631119:如果您修改控制域上虚拟网络设备的最大传输单元 (Maximum Transmission Unit, MTU),则会触发延迟重新配置操作。如果后来取消了延迟重新配置,则该设备的 MTU 值不会恢复到其初始值。

恢复:重新运行 ldm set-vnet 命令以将 MTU 设置为其初始值。重置 MTU 值会将控制域置于延迟重新配置模式,而该模式需要取消。所得到的 MTU 值现在是最初的正确 MTU 值。

# ldm set-vnet mtu=orig-value vnet1 primary
# ldm cancel-op reconf primary
当目标 OS 不支持对加密单元执行 DR 时,具有 MAU 的迁移域仅包含一个 CPU

错误号 15606220:从 Logical Domains 1.3 发行版开始,即使域绑定了一个或多个加密单元,也可能会对该域进行迁移。

在完成迁移之后,目标域将成功恢复而且将正常工作,但是将处于降级状态(仅包含一个 CPU)。

解决方法:在迁移之前,从运行 Logical Domains 1.3 的源计算机中删除加密单元。

实际地址内存绑定故障显示令人困惑的迁移失败消息

错误号 15605806:在某些情况下,迁移失败时会显示以下错误消息,并且 ldmd 报告它无法绑定源域所需的内存。即使目标计算机上的可用内存总量大于源域正使用的内存量(如 ldm ls-devices -a mem 所示),也会出现此情况。

Unable to bind 29952M memory region at real address 0x8000000
Domain Migration of LDom ldg0 failed

原因:出现这种故障的原因是无法满足目标计算机上实际地址 (Real Address, RA) 和物理地址 (Physical Address, PA) 之间的一致性要求。

解决方法:停止该域并以冷迁移形式执行迁移。还可以将来宾域上的内存量减少 128 MB,这可能会允许在域运行期间继续迁移。

从域中动态删除所有的加密单元导致 SSH 终止

错误号 15600969:如果从正在运行的域中动态删除所有的硬件加密单元,加密框架将无法无缝地切换到软件加密提供程序,而且会中止所有 ssh 连接。

恢复:在从域中删除所有的加密单元之后,重新建立 ssh 连接。

解决方法:在服务器端上的 /etc/ssh/sshd_config 文件中设置 UseOpenSSLEngine=no,然后运行 svcadm restart ssh 命令。

所有 ssh 连接将不再使用硬件加密单元(因此也无法获得相关的性能提升),ssh 连接不会在删除加密单元后断开。

PCI Express Dual 10-Gigabit Ethernet Fiber 卡在 ldm list-io -l 输出中显示四个子设备

错误号 15597025:在装有 PCI Express Dual 10-Gigabit Ethernet Fiber 卡 (X1027A-Z) 的系统上运行 ldm ls-io -l 命令时,输出中可能会显示如下内容:

primary# ldm ls-io -l
...
pci@500/pci@0/pci@c PCIE5 OCC primary
network@0
network@0,1
ethernet
ethernet

即使该以太网卡只有两个端口,输出中也会显示四个子设备。出现这种异常的原因在于该卡有四个 PCI 功能。其中的两个功能在内部禁用,在 ldm ls-io -l 输出中显示为 ethernet

解决方法:可以忽略 ldm ls-io -l 输出中的 ethernet 条目。

将 Logical Domains mpgroup 与 MPXIO 存储阵列配置一起使用以实现磁盘高可用性

 

当多个域正在引导时,ldm 命令很慢,无法响应

错误号 15572184:当多个域正在引导时,ldm 命令可能很慢,无法响应。如果在该阶段发出 ldm 命令,该命令可能看起来处于挂起状态。请注意,在执行预期的任务之后,ldm 命令将返回。在该命令返回之后,系统应当能够正常响应 ldm 命令。

解决方法:避免同时引导许多域。但是,如果您必须同时引导多个域,请避免在系统恢复到正常状态之前进一步发出 ldm 命令。例如,在 Sun SPARC Enterprise T5140 和 T5240 服务器上等待两分钟左右,在 Sun SPARC Enterprise T5440 服务器或 Sun Netra T5440 服务器上等待四分钟左右。

Oracle Solaris 11:配置有自动网络接口的区域可能无法启动

错误号 15560811:在 Oracle Solaris 11 中,配置有自动网络接口 (anet) 的区域在仅具有 Logical Domains 虚拟网络设备的域中可能无法启动。

Oracle Solaris 10:未在控制域中正确创建虚拟网络设备

错误号 15560201:有时,当您在域中添加虚拟网络或虚拟磁盘设备之后,ifconfig 指示该设备不存在。这种情况可能是由于未创建 /devices 条目而导致的。

尽管在正常操作期间不应发生此问题,但有时,当虚拟网络设备的实例编号与 /etc/path_to_inst 文件中列出的实例编号不匹配时会发生此错误。

例如:

# ifconfig vnet0 plumb
ifconfig: plumb: vnet0: no such interface

虚拟设备的实例编号显示在 ldm list 输出的 DEVICE 列下面:

# ldm list -o network primary
NAME             
primary          

MAC
 00:14:4f:86:6a:64

VSW
 NAME         MAC               NET-DEV DEVICE   DEFAULT-VLAN-ID PVID VID MTU  MODE  
 primary-vsw0 00:14:4f:f9:86:f3 nxge0   switch@0 1               1        1500        

NETWORK
 NAME   SERVICE              DEVICE    MAC               MODE PVID VID MTU  
 vnet1  primary-vsw0@primary network@0 00:14:4f:f8:76:6d      1        1500

可以将该实例编号(对于前面显示的 vnetvsw 均为 0)与 path_to_inst 文件中的实例编号进行比较以确保它们匹配。

# egrep '(vnet|vsw)' /etc/path_to_inst
"/virtual-devices@100/channel-devices@200/virtual-network-switch@0" 0 "vsw"
"/virtual-devices@100/channel-devices@200/network@0" 0 "vnet"

解决方法:如果实例编号不匹配,请删除虚拟网络或虚拟交换机设备,然后通过显式指定所需的实例编号(方法是设置 id 属性)来再次添加这些设备。

还可以手动编辑 /etc/path_to_inst 文件。请参见 path_to_inst(4) 手册页。


Caution

注意  - 未经仔细考虑不应对 /etc/path_to_inst 进行更改。


如果配置了 Logical Domains,则新添加的 NIU/XAUI 适配器在主机操作系统中不可见

错误号 15555509:如果在系统上配置了 Logical Domains 的情况下添加了另外一个 XAUI 网卡,则对该计算机执行关开机循环之后,该卡将不可见。

恢复:要使新添加的 XAUI 在控制域中可见,请执行以下步骤:

  1. 设置和清除控制域中的伪变量。

    以下命令使用一个名为 fix-xaui 的伪变量:

    # ldm set-var fix-xaui=yes primary
    # ldm rm-var fix-xaui primary
  2. 将修改后的配置保存到 SP,替换当前的配置。

    以下命令使用 config1 作为配置名称:

    # ldm rm-spconfig config1
    # ldm add-spconfig config1
  3. 在对控制域执行重新配置后重新引导。

    # reboot -- -r

    此时,可以配置新提供的网络,使其可供 Logical Domains 使用。

e1000g 引导时,I/O 域或来宾域出现紧急情况

错误号 15543982:可以在诸如 Sun Fire T5240 之类的系统上最多配置两个具有专用 PCI-E 根联合体的域。这些系统具有两个 UltraSPARC T2 Plus CPU 和两个 I/O 根联合体。

pci@500pci@400 是系统中的两个根联合体。primary 域始终至少包含一个根联合体。可以为另外一个域配置未指定或未绑定的根联合体。

如果在非 primary 域中配置了以下网络设备,请避免使用它们:

/pci@400/pci@0/pci@c/network@0,1
/pci@400/pci@0/pci@c/network@0

当满足这些条件时,域将出现紧急情况,而且会出现 PCI-E 致命错误。

请避免进行这样的配置,如果使用了这样的配置,请不要从上面列出的设备进行引导。

显式控制台组和端口绑定未迁移

错误号 15527921:在迁移期间,会忽略显式指定的任何控制台组和端口,而且会为目标域创建一个具有默认属性的控制台。此控制台是通过使用目标域名称作为控制台组并使用控制域中第一个虚拟控制台集中器 (vcc) 设备上的任意可用端口创建的。如果与默认组名有冲突,迁移将失败。

恢复:要在迁移之后恢复显式控制台属性,请解除对目标域的绑定,然后使用 ldm set-vcons 命令手动设置所需的属性。

当目标上的 vdsdev 具有不同的后端时迁移不失败

错误号 15523133:如果目标计算机上的虚拟磁盘不指向源计算机上所使用的同一个磁盘后端,则迁移后的域无法访问使用该磁盘后端的虚拟磁盘。在访问域上的虚拟磁盘时,可能会挂起。

目前,Logical Domains Manager 仅检查源计算机上与目标计算机上的虚拟磁盘卷名称是否相匹配。在这种情况下,如果磁盘后端不匹配,不会显示错误消息。

解决方法:在配置目标域以接收迁移的域时,确保磁盘卷 (vdsdev) 与源域上使用的磁盘后端匹配。

即使目标有足够的可用内存,迁移功能也无法绑定内存

错误号 15523120:在某些情况下,迁移会失败,ldmd 会报告它无法绑定源域所需的内存。即使目标计算机上的可用内存总量大于源域正在使用的内存量,也会出现此情况。

出现这种故障的原因是,迁移正由源域使用的特定内存范围需要目标上也有一致的可用内存范围。如果对于源域中的任何内存范围没有找到此类一致的内存范围,迁移将无法继续。

恢复:遇到这种情况时,可以修改目标计算机上的内存使用情况来迁移域。为此,请解除绑定目标上任何已绑定的或处于活动状态的逻辑域。

使用 ldm list-devices -a mem 命令可以查看可用的内存及其使用方式。您可能还需要减少指定给另一个域的内存量。

当计算机未联网而且 NIS 客户机正在运行时,Logical Domains Manager 不启动

错误号 15518409:如果您的计算机上运行有网络信息服务 (Network Information Service, NIS) 客户机,但未配置网络,则 Logical Domains Manager 将无法在您的系统上启动。

解决方法:在非联网计算机上禁用 NIS 客户机:

# svcadm disable nis/client
当迁移后的域已经引导时,Logical Domains Manager 将这些域显示为处于过渡状态

错误号 15516245:有时,处于活动状态的逻辑域在完成引导很长时间之后或者在完成域迁移之后,显示为处于转换状态,而不是正常状态。这个小错误没有任何害处,该域仍能够完全正常运行。要查看设置了哪个标志,请检查 ldm list -l -p 命令输出中的 flags 字段,或者检查 ldm list 命令的 FLAGS 字段,这两个字段会显示 -n----(表示正常)或 -t----(表示转换)。

恢复:下次重新引导后,该域显示正确的状态。

除非重新启动 vntsd,否则无法连接到迁移后的域控制台

错误号 15513998:有时,在迁移域之后,无法连接到该域的控制台。

解决方法:重新启动 vntsd SMF 服务以允许连接到控制台:

# svcadm restart vntsd

注 - 此命令将断开所有处于活动状态的控制台连接。
有时,从 Logical Domains 系统执行 uadmin 1 0 命令时系统不返回到 OK 提示符

错误号 15511551:有时,从 Logical Domains 系统的命令行执行 uadmin 1 0 命令不会使系统在随后重置后保持在 ok 提示符处。只有当 Logical Domains 变量 auto-reboot? 设置为 true 时,才会出现这种不正确的行为。如果 auto-reboot? 设置为 false,则会出现预期的行为。

解决方法:改为使用以下命令:

uadmin 2 0

或者,始终在 auto-reboot? 设置为 false 的情况下运行。

Logical Domains Manager 关闭域至少需要 15 分钟

错误号 15505014:对于具有单个 CPU 和巨大内存的配置,关闭域或清理内存可能至少需要 15 分钟。在关闭过程中,域中的 CPU 用于清理由该域拥有的所有内存。如果配置不平衡(例如,只有一个 CPU 的域,内存多达 512 GB),完成清理所需的时间可能会相当长。清理时间延长后,关闭域所需的时间也会延长。

解决方法:确保大内存配置(大于 100 GB)至少有一个核心。

scadm 命令在 SC 或 SP 重置之后可能会挂起

错误号 15469227:对于运行 Oracle Solaris 10 5/08 OS 或更高版本的控制域,scadm 命令在 SC 重置之后可能会挂起。在 SC 重置之后,系统无法正确地重新建立连接。

恢复:重新引导主机,以便与 SC 重新建立连接。

在公用控制台组中同时进行多个域的网络安装会失败

错误号 15453968:在共用同一个控制台组的系统上同时进行的多个来宾域的网络安装失败。

解决方法:仅在拥有其各自控制台组的来宾域上进行网络安装。只有在多个网络安装域之间共享一个公用控制台组的域上才会出现这种失败情况。

在同一个网络上有太多虚拟网络使用 DHCP 的来宾域可能会变得不响应

错误号 15422900:如果在同一个网络上的来宾域中使用动态主机配置协议 (Dynamic Host Configuration Protocol, DHCP) 配置了四个以上的虚拟网络 (vnet),则来宾域最终可能会在运行网络通信时变得不响应。

解决方法:如果有 8 个接口,请将 ip_ire_min_bucket_cntip_ire_max_bucket_cnt 设置为较大的值(如 32)。

恢复:针对有问题的来宾域 (ldom) 发出 ldm stop-domain ldom 命令,随后发出 ldm start-domain ldom 命令。

运行 Logical Domains Manager 时无法使用 eeprom 命令修改 OpenBoot PROM 变量

错误号 15387338:Logical Domains 变量持久性中对此问题进行了总结,它仅影响控制域。

在 Logical Domains 运行时无法设置安全密钥

错误号 15370442:在 Logical Domains 环境中,不支持从 Oracle Solaris OS 内使用 ickey(1M) 命令设置或删除广域网 (wide-area network, WAN) 引导密钥。所有的 ickey 操作都会失败并出现以下错误:

ickey: setkey: ioctl: I/O error

另外,在逻辑域(而不是控制域)中使用 OpenBoot 固件设置的 WAN 引导密钥在该域重新引导之后不会被记住。在这些域中,从 OpenBoot 固件设置的密钥只能使用一次。

ldm stop-domain 命令的行为可能会令人困惑

错误号 15368170:在某些情况下,ldm stop-domain 命令的行为会令人困惑。

# ldm stop-domain -f ldom

如果域位于内核模块调试器 kmdb(1) 提示符下,则 ldm stop-domain 命令会失败并出现以下错误消息:

LDom <domain-name> stop notification failed