[PATCH 1/2] nvme: multipath: atomic queue limits need to be inherited

John Garry john.g.garry at oracle.com
Wed Apr 30 23:06:50 PDT 2025


On 01/05/2025 06:47, John Garry wrote:
> When a controller is attached that has the CMIC.MCTRS bit set, it indicates
> the subsystem supports multiple controllers and it is possible a namespace
> can be shared between those multiple controllers in a multipathed
> configuration.
> 
> When a namespace of a CMIC.MCTRS enabled subsystem is allocated, a
> multipath node is created.  The queue limits for this node are inherited
> from the namespace being allocated. When inheriting queue limits, the
> features being inherited need to be specified. The atomic write feature
> (BLK_FEAT_ATOMIC_WRITES) was not specified so the atomic queue limits
> were not inherited by the multipath disk node which resulted in the sysfs
> atomic write attributes being zeroed. The fix is to include
> BLK_FEAT_ATOMIC_WRITES in the list of features to be inherited.

BTW, I think that it is worth repeating that latest QEMU has CMIC 
enabled for MP, so we can't use atomic writes without this change. But I 
doubt whether QEMU should enable this always.



More information about the Linux-nvme mailing list