From 239ba69c7830ac6db40719fcf0ccbd2ad9b33c73 Mon Sep 17 00:00:00 2001 From: Daniel Verkamp Date: Wed, 31 May 2017 17:26:16 -0700 Subject: [PATCH] nvmf_tgt: decouple RPC ns list from subsystem internals MAX_VIRTUAL_NAMESPACE will be removed from the public API, so use an RPC-specific array size to remove its use in nvmf_tgt. Also increase the number of namespaces accepted by the RPC call; this does not actually allow more than MAX_VIRTUAL_NAMESPACE right now, since the namespaces are still stored in a fixed-size array inside the subsystem, but at least the RPC side is not limited by that size now. In the future, we will make the subsystem namespace list dynamically sized. Change-Id: I99c77ddeae4c13ddde34e2b945c663dbafdb68d9 Signed-off-by: Daniel Verkamp Reviewed-on: https://review.gerrithub.io/363310 Tested-by: SPDK Automated Test System Reviewed-by: Ben Walker --- app/nvmf_tgt/nvmf_rpc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/nvmf_tgt/nvmf_rpc.c b/app/nvmf_tgt/nvmf_rpc.c index a93af6f92..f28ca2de0 100644 --- a/app/nvmf_tgt/nvmf_rpc.c +++ b/app/nvmf_tgt/nvmf_rpc.c @@ -161,6 +161,7 @@ SPDK_RPC_REGISTER("get_nvmf_subsystems", spdk_rpc_get_nvmf_subsystems) #define RPC_MAX_LISTEN_ADDRESSES 255 #define RPC_MAX_HOSTS 255 +#define RPC_MAX_NAMESPACES 255 struct rpc_listen_addresses { size_t num_listen_address; @@ -213,7 +214,7 @@ decode_rpc_hosts(const struct spdk_json_val *val, void *out) struct rpc_dev_names { size_t num_names; - char *names[MAX_VIRTUAL_NAMESPACE]; + char *names[RPC_MAX_NAMESPACES]; }; static int @@ -222,7 +223,7 @@ decode_rpc_dev_names(const struct spdk_json_val *val, void *out) struct rpc_dev_names *dev_names = out; return spdk_json_decode_array(val, spdk_json_decode_string, dev_names->names, - MAX_VIRTUAL_NAMESPACE, + SPDK_COUNTOF(dev_names->names), &dev_names->num_names, sizeof(char *)); }