• Chaitanya Kulkarni's avatar
    nvmet: add ZBD over ZNS backend support · aaf2e048
    Chaitanya Kulkarni authored
    NVMe TP 4053 – Zoned Namespaces (ZNS) allows host software to
    communicate with a non-volatile memory subsystem using zones for NVMe
    protocol-based controllers. NVMeOF already support the ZNS NVMe
    Protocol compliant devices on the target in the passthru mode. There
    are generic zoned block devices like  Shingled Magnetic Recording (SMR)
    HDDs that are not based on the NVMe protocol.
    
    This patch adds ZNS backend support for non-ZNS zoned block devices as
    NVMeOF targets.
    
    This support includes implementing the new command set NVME_CSI_ZNS,
    adding different command handlers for ZNS command set such as NVMe
    Identify Controller, NVMe Identify Namespace, NVMe Zone Append,
    NVMe Zone Management Send and NVMe Zone Management Receive.
    
    With the new command set identifier, we also update the target command
    effects logs to reflect the ZNS compliant commands.
    Signed-off-by: default avatarChaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
    Reviewed-by: default avatarDamien Le Moal <damien.lemoal@wdc.com>
    Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
    aaf2e048
admin-cmd.c 26 KB