• 《NVM-Express-1_4-2019.06.10-Ratified》学习笔记(5.23)-- Format NVM command


    5.23 Format NVM command - NVM Command Set Specific

    Format NVM命令用于低级格式化NVM媒介。这个命令被host主机使用,来变更LBA数据大小和(或)元数据大小。一个低级格式化可以销毁命令指定的相关所有namespace或仅特定的namespace上的所有数据和元数据(参考Identify Controller数据结构中的Format NVM Attributes字段)。Foamat NVM命令成功完成之后,之前包含在对应namespace的任何用户数据都不能再由controller读出来了。

    作为Format NVM命令的一部分,主机请求一个格式化操作并且可以请求一个NVM内容的安全擦除(参考Figure 328的SES字段)。有两种类型的擦除。User Data Erase擦除所有呈现在NVM subsystem中的用户内容。Cryptographic Erase是通过删除用于之前加密用户数据所用的加密密钥来擦除NVM subsystem中呈现的所有用户内容。

    格式化操作的范围和安全擦除格式化的范围依赖于controller对Format NVM命令支持的属性和命令中指定的Namespace Identifier,请参见Figure 327中的描述。安全擦除类型,如果能使用的话,它基于Command Dword 10中Secure Erase Settings字段,如Figure 328中定义。

    如果controller处于一种无效的安全状态(参考相应的安全规范,例如:TCG Storage Interface Interactions Specification)Format NVM命令将失败。如果有待处理的I/O命令到指定的被格式化的namespace,Format NVM命令可以失败。如果Format NVM命令正在被处理,发向此namespace的I/O命令可能被中止,如果中止发生controller就返回一个Format in Progress状态码。

    对于一个NSID字段设置为0xFFFFFFFF的Format命令指定安全的擦除:

    a)如果FNA字段的第1位设置为1(参考Figure247)并且NVM subsystem中没有namespaces,那么Format命令应该无错误完成;

    b)如果FNA字段的第1位设置为0,并且没有挂载namespaces,那么Format命令应该无错误完成。

    对于一个NSID字段设置为0xFFFFFFFF的Format命令未指定安全的擦除:

    a)如果FNA字段的第0位设置为1,并且NVM subsystem中没有namespaces,那么Format命令应该无错误完成;

    b)如果FNA字段的第0位设置为0,并且没有挂载namespaces,那么Format命令应该无错误完成。

    Format NVM命令成功完成支持,Format NVM命令中指定的设置(例如PI,MSET,LBAF)被上报,作为Identify Namespace数据结构的一部分。如果Format NVM命令导致namespace的逻辑块大小变化,那么致使namespace大小(即:NSZE)(参考Figure245)和namespace能力(即:NCAP)(参考Figure245)与Format NVM命令处理之前指示的值可能不同。

    Format NVM命令使用Command Dword 10字段。所有其他特定于命令的字段保留。

    5.23.1 命令Completion

    当NVM媒介格式化完成后CQE被推送到Admin CQ中。Format NVM命令特定状态值定义在Figure 329中。

  • 相关阅读:
    会计继续教育
    免费看电影、电视剧的app
    微信开发者工具 测试过程的小助手
    2022年目标
    基于.Net6.0开发WebApi(一) —— 搭建项目框架
    asp.net中的省市区联动封装成用户控件
    uniapp文件下载
    Axure中动态表格序号自增中继器应用方法2
    JSinDeep1:探索执行环境 (Execution Context)ES3篇
    美国知名天使投资人列出愿意投资的30大创意方向
  • 原文地址:https://www.cnblogs.com/JamesLi/p/11737144.html
Copyright © 2020-2023  润新知