[PATCH v2] nvme: stop using AWUPF
Keith Busch
kbusch at kernel.org
Wed Jan 28 07:12:16 PST 2026
On Wed, Jan 28, 2026 at 08:26:23AM +0000, John Garry wrote:
> As described at [0], much of the atomic write parts of the specification
> are lacking.
>
> For now, there is nothing which we can do in software about the lack of
> a dedicated NVMe write atomic command.
>
> As for reading the atomic write limits, it is felt that the per-namespace
> values are mostly properly specified and it is assumed that they are
> properly implemented.
>
> The specification of NAWUPF is quite clear. However the specification of
> NABSPF is less clear. The lack of clarity in NABSPF comes from deciding
> whether NABSPF applies when NSABP is 0 - it is assumed that NSABPF does
> not apply when NSABP is 0.
>
> As for the per-controller AWUPF, how this value applies to shared
> namespaces is missing in the specification. Furthermore, the value is in
> terms of logical blocks, which is an NS entity.
>
> Since AWUPF is so poorly defined, stop using it already together.
> Hopefully this will force vendors to implement NAWUPF support always.
>
> Note that AWUPF not only effects atomic write support, but also the
> physical block size reported for the device.
>
> To help users know this restriction, log an info message per NS.
Thanks, applied to nvme-7.0.
More information about the Linux-nvme
mailing list