数据结构 - 持久事件日志事件类型 (第217页)
NVME2.0协议解读 1 min read

数据结构 - 持久事件日志事件类型 (第217页)

Blog Author

NVM Express® Base Specification, revision 2.0b 中,持久事件日志(Persistent Event Log)定义了一个非常重要的结构,它记录了 NVM 子系统中的各种事件。这些事件对于设备的诊断、健康监控、以及维护是至关重要的。

持久事件日志事件类型

每个事件条目都包含一个事件类型字段,标识该事件的具体类型。根据事件类型的不同,包含的数据格式也各有不同。以下是 Persistent Event Log Events 中定义的几种事件类型:

事件类型字段(Event Type)

每个事件都有一个 事件类型字段(Event Type),指示该事件的类别。下面是一些常见的事件类型:

类型 事件名称 描述 必须支持性
00h 保留 保留的事件类型,未使用 -
01h SMART / Health Log Snapshot 记录SMART/健康信息快照事件 强制(NVMe over PCIe)
02h Firmware Commit 固件提交事件 强制(命令支持时)
03h Timestamp Change 时间戳变更事件 强制(命令支持时)
04h Power-on or Reset 电源开启或重置事件 强制(命令支持时)
05h NVM Subsystem Hardware Error 硬件错误事件 强制(命令支持时)
06h Change Namespace 命名空间更改事件 强制(命令支持时)
07h Format NVM Start 格式化NVM开始事件 强制(命令支持时)
08h Format NVM Completion 格式化NVM完成事件 强制(命令支持时)
09h Sanitize Start 清除开始事件 强制(命令支持时)
0Ah Sanitize Completion 清除完成事件 强制(命令支持时)
0Bh Set Feature 设置功能事件 可选(NVMe over PCIe)
0Ch Telemetry Log Created 创建遥测日志事件 可选(NVMe over PCIe)
0Dh Thermal Excursion 热偏移事件(温度超标) 可选(NVMe over PCIe)
DEh Vendor Specific Event 供应商特定事件 可选
DFh TCG Defined TCG定义的事件 可选

注释: 1. O/M定义:O=可选,M=强制。 2. 对于 NVMe over PCIe 实现,某些事件类型是强制的(例如,SMART/Health Log Snapshot),而对于 NVMe over Fabrics 实现,则是可选的。 3. 命令支持性:如果触发事件的命令被支持,则相关事件必须被记录。

事件类型详细分析

1. SMART / Health Log Snapshot 事件(Event Type 01h)

此事件用于记录 SMART/健康信息的快照,定期生成。具体要求如下: - 如果 虚拟化管理 未实现,所有控制器都会生成这个事件。 - 如果 虚拟化管理 已实现,则每个主控制器每24小时生成一次该事件。

事件格式规定: - Event Type 字段设置为 01h。 - Event Type Revision 字段设置为 01h

事件数据(Event Data)包含 SMART / Health Information Log 中的数据(参见 Figure 207)。这为系统健康监控提供了快照,帮助检测潜在的硬件问题或性能下降。

2. Firmware Commit 事件(Event Type 02h)

当固件提交(Firmware Commit)命令完成时,将记录该事件。事件格式: - Event Type 字段设置为 02h。 - Event Type Revision 字段设置为 01h

此事件标志着固件更新过程的完成,并将提供有关固件状态的信息。

3. Timestamp Change 事件(Event Type 03h)

此事件用于记录时间戳的更改,通常在时间同步或校准时触发。事件数据将包括新的时间戳值,确保系统事件的准确时间戳记录。

4. NVM 子系统硬件错误事件(Event Type 05h)

此事件记录 NVM 子系统硬件错误。通常会在硬件故障、崩溃或不一致的状态发生时触发。它提供了详细的硬件故障信息,以便后续的诊断和修复。

总结

  • 持久事件日志 提供了一种有效的方式来记录和跟踪 NVM 子系统中的重要事件,帮助系统管理员监控设备状态,诊断问题并优化系统。
  • 各类事件类型不仅帮助捕捉硬件、固件和温度等方面的变化,还能够确保设备在遭遇异常状态时及时向主机报告,以便采取相应的恢复措施。
  • 对事件的记录和处理遵循 NVM Express® Base Specification 规范,确保了数据的一致性和准确性,同时也考虑到供应商特定的扩展要求。