[PATCH 3/4] nvmet: prevent max_qid changes for discovered subsystems
Daniel Wagner
dwagner at suse.de
Thu Sep 25 00:36:03 PDT 2025
On Wed, Sep 24, 2025 at 11:26:03PM +0300, Max Gurtovoy wrote:
> Disallow updates to the max_qid attribute via configfs after a
> subsystem has been discovered. This prevents invalid configuration
> and avoids races during controller setup. The maximal queue
> identifier can now only be set on non-discovered subsystems,
> ensuring consistent configuration state.
IIUC, this change will break an existing blktests where it tests if
the max queue changes on reconnect. This took a while to fix in the host
and the very reason the disconnect call is buried in the max queue
update. blktests nvme/048
The scenario where this happens if you have a multi node target and one
node after the other gets a new firmware. For some reason the number of
max queue changes in the new firmware. When the host fails over to an
updated node the host can't blindly reuse the old queue max:
555f66d0f8a3 ("nvme-fc: update hardware queues before using them")
So if we find a way to keep this tests scenario alive I don't mind. But
as I said I think this will break it.
More information about the Linux-nvme
mailing list