[PATCH v2 2/2] nvmet: return Invalid Field for invalid NSIDs in Get Features 82h
Nilay Shroff
nilay at linux.ibm.com
Fri Sep 25 04:24:51 PDT 2026
On 9/20/26 9:05 AM, Guixin Liu wrote:
> The Reservation Notification Mask feature (FID 82h) rejects the same
> NSIDs for Get Features as for Set Features, plus the broadcast NSID:
>
> "A Get Features command that uses a namespace ID of FFFFFFFFh
> shall be aborted with status code of Invalid Field in Command.
> If a Set Features command or a Get Features command attempts to
> access the Reservation Notification Mask on a namespace that does
> not support reservations or is invalid, then that command is
> aborted with status code of Invalid Field in Command."
>
> -- NVMe Base Specification, section 5.2.26.1.33
>
> The Get Features handler routes the namespace lookup through
> nvmet_req_find_ns(), which returns Invalid Namespace or Format for an
> unknown NSID. Both rejected cases land there: a nonexistent NSID
> fails the lookup, and so does the broadcast NSID, which never names a
> namespace. Both are aborted with Invalid Namespace or Format instead
> of Invalid Field in Command.
>
> Translate the lookup failure to Invalid Field in Command, as was done
> for Set Features.
>
> Fixes: 5a47c2080a73 ("nvmet: support reservation feature")
> Signed-off-by: Guixin Liu<kanie at linux.alibaba.com>
Looks good to me.
Reviewed-by: Nilay Shroff <nilay at linux.ibm.com>
More information about the Linux-nvme
mailing list