]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
nvme-tcp: send only permitted commands for secure concat
authorMartin George <martinus.gpy@gmail.com>
Tue, 9 Sep 2025 10:35:09 +0000 (16:05 +0530)
committerKeith Busch <kbusch@kernel.org>
Mon, 15 Sep 2025 16:25:05 +0000 (09:25 -0700)
In addition to sending permitted commands such as connect/auth
over the initial unencrypted admin connection as part of secure
channel concatenation, the host also sends commands such as
Property Get and Identify on the same. This is a spec violation
leading to secure concat failures. Fix this by ensuring these
additional commands are avoided on this connection.

Fixes: 104d0e2f6222 ("nvme-fabrics: reset admin connection for secure concatenation")
Signed-off-by: Martin George <marting@netapp.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Keith Busch <kbusch@kernel.org>
drivers/nvme/host/tcp.c

index c0fe8cfb7229e16af41286f5edb01586ad617291..1413788ca7d52389db0b36d4acc086a7e80ebeeb 100644 (file)
@@ -2250,6 +2250,9 @@ static int nvme_tcp_configure_admin_queue(struct nvme_ctrl *ctrl, bool new)
        if (error)
                goto out_cleanup_tagset;
 
+       if (ctrl->opts->concat && !ctrl->tls_pskid)
+               return 0;
+
        error = nvme_enable_ctrl(ctrl);
        if (error)
                goto out_stop_queue;