linux-nvme.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: Hannes Reinecke <hare@kernel.org>
To: Christoph Hellwig <hch@lst.de>
Cc: Sagi Grimberg <sagi@grimberg.me>, Keith Busch <kbusch@kernel.org>,
	linux-nvme@lists.infradead.org, Hannes Reinecke <hare@kernel.org>
Subject: [PATCH 3/8] nvmet-tcp: implement host_traddr()
Date: Fri, 22 Mar 2024 08:03:28 +0100	[thread overview]
Message-ID: <20240322070333.3820-4-hare@kernel.org> (raw)
In-Reply-To: <20240322070333.3820-1-hare@kernel.org>

Implement callback to display the host transport address.

Signed-off-by: Hannes Reinecke <hare@kernel.org>
---
 drivers/nvme/target/tcp.c | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/drivers/nvme/target/tcp.c b/drivers/nvme/target/tcp.c
index 4718d4d87a85..d890c1a393d8 100644
--- a/drivers/nvme/target/tcp.c
+++ b/drivers/nvme/target/tcp.c
@@ -2201,6 +2201,19 @@ static void nvmet_tcp_disc_port_addr(struct nvmet_req *req,
 	}
 }
 
+static ssize_t nvmet_tcp_host_port_addr(struct nvmet_ctrl *ctrl,
+			char *traddr, size_t traddr_len)
+{
+	struct nvmet_sq *sq = ctrl->sqs[0];
+	struct nvmet_tcp_queue *queue =
+		container_of(sq, struct nvmet_tcp_queue, nvme_sq);
+
+	if (queue->sockaddr_peer.ss_family == AF_UNSPEC)
+		return -EINVAL;
+	return snprintf(traddr, traddr_len, "%pISc",
+			(struct sockaddr *)&queue->sockaddr_peer);
+}
+
 static const struct nvmet_fabrics_ops nvmet_tcp_ops = {
 	.owner			= THIS_MODULE,
 	.type			= NVMF_TRTYPE_TCP,
@@ -2211,6 +2224,7 @@ static const struct nvmet_fabrics_ops nvmet_tcp_ops = {
 	.delete_ctrl		= nvmet_tcp_delete_ctrl,
 	.install_queue		= nvmet_tcp_install_queue,
 	.disc_traddr		= nvmet_tcp_disc_port_addr,
+	.host_traddr		= nvmet_tcp_host_port_addr,
 };
 
 static int __init nvmet_tcp_init(void)
-- 
2.35.3



  parent reply	other threads:[~2024-03-22  7:03 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-22  7:03 [PATCHv3 0/8] nvmet: debugfs support Hannes Reinecke
2024-03-22  7:03 ` [PATCH 1/8] nvmet: add " Hannes Reinecke
2024-03-23 20:25   ` Sagi Grimberg
2024-03-26 11:55     ` Hannes Reinecke
2024-03-25 18:18   ` Daniel Wagner
2024-03-25 19:22     ` Daniel Wagner
2024-03-25 22:39     ` Sagi Grimberg
2024-03-26  7:16       ` Daniel Wagner
2024-03-26  7:14     ` Hannes Reinecke
2024-03-26  7:22       ` Daniel Wagner
2024-03-22  7:03 ` [PATCH 2/8] nvmet: add 'host_traddr' callback for debugfs Hannes Reinecke
2024-03-23 20:27   ` Sagi Grimberg
2024-03-22  7:03 ` Hannes Reinecke [this message]
2024-03-23 20:27   ` [PATCH 3/8] nvmet-tcp: implement host_traddr() Sagi Grimberg
2024-03-22  7:03 ` [PATCH 4/8] nvmet-rdma: " Hannes Reinecke
2024-03-23 20:27   ` Sagi Grimberg
2024-03-22  7:03 ` [PATCH 5/8] nvmet-fc: " Hannes Reinecke
2024-03-22  7:03 ` [PATCH 6/8] nvme-fcloop: implement 'host_traddr' Hannes Reinecke
2024-03-22  7:03 ` [PATCH 7/8] lpfc_nvmet: " Hannes Reinecke
2024-03-22  7:03 ` [PATCH 8/8] nvmet: add debugfs support for queues Hannes Reinecke
2024-03-23 20:31   ` Sagi Grimberg
2024-03-25  7:25     ` Hannes Reinecke
2024-03-25  9:07       ` Sagi Grimberg

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=20240322070333.3820-4-hare@kernel.org \
    --to=hare@kernel.org \
    --cc=hch@lst.de \
    --cc=kbusch@kernel.org \
    --cc=linux-nvme@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).