From: Christoph Hellwig <hch@lst.de>
To: alistair23@gmail.com
Cc: chuck.lever@oracle.com, hare@kernel.org,
kernel-tls-handshake@lists.linux.dev, netdev@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
linux-nvme@lists.infradead.org, linux-nfs@vger.kernel.org,
kbusch@kernel.org, axboe@kernel.dk, hch@lst.de, sagi@grimberg.me,
kch@nvidia.com, hare@suse.de,
Alistair Francis <alistair.francis@wdc.com>
Subject: Re: [PATCH v7 5/5] nvmet-tcp: Support KeyUpdate
Date: Fri, 20 Mar 2026 08:53:48 +0100 [thread overview]
Message-ID: <20260320075348.GC14616@lst.de> (raw)
In-Reply-To: <20260304053500.590630-6-alistair.francis@wdc.com>
> static void nvmet_tcp_free_cmd_buffers(struct nvmet_tcp_cmd *cmd);
> +#ifdef CONFIG_NVME_TARGET_TCP_TLS
> +static int nvmet_tcp_tls_handshake(struct nvmet_tcp_queue *queue,
> + enum handshake_key_update_type keyupdate);
> +#endif
Can we find a way to just avoid the ifdefered here and just rely on
compiler dead code elimination?
> +#ifdef CONFIG_NVME_TARGET_TCP_TLS
> +static bool nvmet_tls_key_expired(struct nvmet_tcp_queue *queue, int ret)
> +{
> + return ret == -EKEYEXPIRED &&
> + queue->state != NVMET_TCP_Q_DISCONNECTING &&
> + queue->state != NVMET_TCP_Q_TLS_HANDSHAKE;
> +}
> +#else
> +static bool nvmet_tls_key_expired(struct nvmet_tcp_queue *queue, int ret)
> +{
> + return false;
> +}
> +#endif
This is a pretty clear candidate for IS_ENABLED().
> + spin_lock_bh(&queue->state_lock);
> + if (queue->state == NVMET_TCP_Q_TLS_HANDSHAKE) {
> + /* Socket closed during handshake */
> + tls_handshake_cancel(queue->sock->sk);
> + }
> + if (queue->state != NVMET_TCP_Q_DISCONNECTING) {
> + queue->state = NVMET_TCP_Q_DISCONNECTING;
> + kref_put(&queue->kref, nvmet_tcp_release_queue);
> + }
switch on the queue state?
> + ret = nvmet_tcp_tls_handshake(queue, HANDSHAKE_KEY_UPDATE_TYPE_RECEIVED);
Overly lone line.
> if (unlikely(ret < 0)) {
> + if (nvmet_tls_key_expired(queue, ret))
> + goto done;
This has extra indentation.
prev parent reply other threads:[~2026-03-20 7:53 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-04 5:34 [PATCH v7 0/5] nvme-tcp: Support receiving KeyUpdate requests alistair23
2026-03-04 5:34 ` [PATCH v7 1/5] net/handshake: Store the key serial number on completion alistair23
2026-03-04 5:34 ` [PATCH v7 2/5] net/handshake: Define handshake_req_keyupdate alistair23
2026-03-04 5:34 ` [PATCH v7 3/5] net/handshake: Support KeyUpdate message types alistair23
2026-03-04 5:34 ` [PATCH v7 4/5] nvme-tcp: Support KeyUpdate alistair23
2026-03-04 7:40 ` Hannes Reinecke
2026-03-04 11:37 ` Alistair Francis
2026-03-05 11:43 ` Hannes Reinecke
2026-03-20 7:51 ` Christoph Hellwig
2026-03-04 10:44 ` kernel test robot
2026-03-05 7:52 ` kernel test robot
2026-03-05 10:13 ` kernel test robot
2026-03-04 5:35 ` [PATCH v7 5/5] nvmet-tcp: " alistair23
2026-03-20 7:53 ` Christoph Hellwig [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260320075348.GC14616@lst.de \
--to=hch@lst.de \
--cc=alistair.francis@wdc.com \
--cc=alistair23@gmail.com \
--cc=axboe@kernel.dk \
--cc=chuck.lever@oracle.com \
--cc=hare@kernel.org \
--cc=hare@suse.de \
--cc=kbusch@kernel.org \
--cc=kch@nvidia.com \
--cc=kernel-tls-handshake@lists.linux.dev \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-nvme@lists.infradead.org \
--cc=netdev@vger.kernel.org \
--cc=sagi@grimberg.me \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.