nvmf: Hide definition of spdk_nvmf_subsystem
Now the user only sees an opaque structure. Change-Id: Ie73b4bb0157228bbcab1b3c211d7383f881fd07e Signed-off-by: Ben Walker <benjamin.walker@intel.com> Reviewed-on: https://review.gerrithub.io/374708 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com>
This commit is contained in:
parent
683d4a4cad
commit
977d78778b
@ -72,43 +72,11 @@ struct spdk_nvmf_listen_addr {
|
||||
TAILQ_ENTRY(spdk_nvmf_listen_addr) link;
|
||||
};
|
||||
|
||||
struct spdk_nvmf_ns {
|
||||
struct spdk_bdev *bdev;
|
||||
struct spdk_bdev_desc *desc;
|
||||
struct spdk_io_channel *ch;
|
||||
uint32_t id;
|
||||
bool allocated;
|
||||
};
|
||||
|
||||
/*
|
||||
* The NVMf subsystem, as indicated in the specification, is a collection
|
||||
* of controllers. Any individual controller has
|
||||
* access to all the NVMe device/namespaces maintained by the subsystem.
|
||||
*/
|
||||
struct spdk_nvmf_subsystem {
|
||||
uint32_t id;
|
||||
char subnqn[SPDK_NVMF_NQN_MAX_LEN + 1];
|
||||
enum spdk_nvmf_subtype subtype;
|
||||
bool is_removed;
|
||||
|
||||
char sn[MAX_SN_LEN + 1];
|
||||
|
||||
struct spdk_nvmf_ns ns[MAX_VIRTUAL_NAMESPACE];
|
||||
uint32_t max_nsid;
|
||||
|
||||
void *cb_ctx;
|
||||
spdk_nvmf_subsystem_connect_fn connect_cb;
|
||||
spdk_nvmf_subsystem_disconnect_fn disconnect_cb;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_ctrlr) ctrlrs;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_host) hosts;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_listener) listeners;
|
||||
|
||||
TAILQ_ENTRY(spdk_nvmf_subsystem) entries;
|
||||
};
|
||||
|
||||
struct spdk_nvmf_subsystem *spdk_nvmf_create_subsystem(const char *nqn,
|
||||
enum spdk_nvmf_subtype type,
|
||||
void *cb_ctx,
|
||||
@ -222,6 +190,7 @@ struct spdk_nvmf_listener *spdk_nvmf_subsystem_get_next_listener(
|
||||
const struct spdk_nvme_transport_id *spdk_nvmf_listener_get_trid(
|
||||
struct spdk_nvmf_listener *listener);
|
||||
|
||||
|
||||
void spdk_nvmf_subsystem_poll(struct spdk_nvmf_subsystem *subsystem);
|
||||
|
||||
/**
|
||||
|
@ -74,6 +74,38 @@ struct spdk_nvmf_poll_group {
|
||||
TAILQ_ENTRY(spdk_nvmf_poll_group) link;
|
||||
};
|
||||
|
||||
struct spdk_nvmf_ns {
|
||||
struct spdk_bdev *bdev;
|
||||
struct spdk_bdev_desc *desc;
|
||||
struct spdk_io_channel *ch;
|
||||
uint32_t id;
|
||||
bool allocated;
|
||||
};
|
||||
|
||||
struct spdk_nvmf_subsystem {
|
||||
uint32_t id;
|
||||
char subnqn[SPDK_NVMF_NQN_MAX_LEN + 1];
|
||||
enum spdk_nvmf_subtype subtype;
|
||||
bool is_removed;
|
||||
|
||||
char sn[MAX_SN_LEN + 1];
|
||||
|
||||
struct spdk_nvmf_ns ns[MAX_VIRTUAL_NAMESPACE];
|
||||
uint32_t max_nsid;
|
||||
|
||||
void *cb_ctx;
|
||||
spdk_nvmf_subsystem_connect_fn connect_cb;
|
||||
spdk_nvmf_subsystem_disconnect_fn disconnect_cb;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_ctrlr) ctrlrs;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_host) hosts;
|
||||
|
||||
TAILQ_HEAD(, spdk_nvmf_listener) listeners;
|
||||
|
||||
TAILQ_ENTRY(spdk_nvmf_subsystem) entries;
|
||||
};
|
||||
|
||||
extern struct spdk_nvmf_tgt g_nvmf_tgt;
|
||||
|
||||
struct spdk_nvmf_listen_addr *spdk_nvmf_listen_addr_create(struct spdk_nvme_transport_id *trid);
|
||||
|
Loading…
Reference in New Issue
Block a user