From: Hannes Reinecke <hare@suse.de>
To: Sagi Grimberg <sagi@grimberg.me>
Cc: Christoph Hellwig <hch@lst.de>, Keith Busch <kbusch@kernel.org>,
linux-nvme@lists.infradead.org, Hannes Reinecke <hare@suse.de>
Subject: [PATCHv6 0/4] nvmet: unique discovery subsystems
Date: Wed, 20 Apr 2022 11:27:26 +0200 [thread overview]
Message-ID: <20220420092730.35101-1-hare@suse.de> (raw)
Hi all,
here's my next attempt to support unique discovery subsystems.
As per suggestion from Christoph this patchset allows to have a per-port
discovery subsystem. For that a normal NVMe subsystem needs to be created
via configfs, the type needs to be changed to 'discovery', and then linked
into the port where this discovery subsystem should be visible.
Once that is done the discovery log page output will include all ports
into which the same discovery controller is linked.
If the discovery subsystem is unlinked the default behaviour is reinstated.
Additionally a module parameter 'expose_discovery_subsys' is implemented,
which will allow (or, rather, require) the creation of the default discovery subsystem via configfs, too. Once that option is enabled only ports into which
a discovery subsystem is linked will be presenting a discovery service; on
other ports a discovery attempt will fail.
As usual, comments and reviews are welcome.
Changes to v5:
- Implement 'expose_discovery_subsys' module option to allow the creation of
the standard discovery subsystem via configfs.
Changes to v4:
- Unset disc_subsys pointer when unique discovery subsystem
gets unlinked
- Improve documentation
- Use port count to determine if a subsystem is linked to ports
Changes to v3:
- Rework to use per-port discovery subsystems as suggested by hch
Changes to v2:
- Heavily rework after discussion on the mailing list
Changes to the original submission:
- Include all subsystems in the discovery log output
Hannes Reinecke (4):
nvmet: make the subsystem type configurable
nvmet: per-port discovery subsystem
nvmet: include all configured ports in the discovery log page
nvmet: expose discovery subsystem
drivers/nvme/target/configfs.c | 80 ++++++++++++++++++++++-
drivers/nvme/target/core.c | 15 ++++-
drivers/nvme/target/discovery.c | 108 +++++++++++++++++++++++++-------
drivers/nvme/target/nvmet.h | 2 +
4 files changed, 176 insertions(+), 29 deletions(-)
--
2.29.2
next reply other threads:[~2022-04-20 9:27 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-20 9:27 Hannes Reinecke [this message]
2022-04-20 9:27 ` [PATCH 1/4] nvmet: make the subsystem type configurable Hannes Reinecke
2022-05-10 18:36 ` Sagi Grimberg
2022-05-11 5:38 ` Hannes Reinecke
2022-04-20 9:27 ` [PATCH 2/4] nvmet: per-port discovery subsystem Hannes Reinecke
2022-04-20 9:27 ` [PATCH 3/4] nvmet: include all configured ports in the discovery log page Hannes Reinecke
2022-05-10 18:43 ` Sagi Grimberg
2022-05-11 5:41 ` Hannes Reinecke
2022-04-20 9:27 ` [PATCH 4/4] nvmet: expose discovery subsystem Hannes Reinecke
2022-05-10 18:59 ` Sagi Grimberg
2022-05-11 6:27 ` Hannes Reinecke
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=20220420092730.35101-1-hare@suse.de \
--to=hare@suse.de \
--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