lib/iscsi: Remove the code for the deprecated CPU mask
CPU mask parameter was deprecated in v19.10. If we remove the related code from the portal parser, we will be able to use the parser for the iSCSI initiator to know the target portal in iSCSI fuzz testing. So let's remove the parser and its test code here. Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Change-Id: I72ad4364323abda0f0ed10519b56244cd0c7612e Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/476830 Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
This commit is contained in:
parent
487eb66e24
commit
fd77140073
@ -3540,7 +3540,6 @@ Example response:
|
||||
{
|
||||
"portals": [
|
||||
{
|
||||
"cpumask": "0x2",
|
||||
"host": "127.0.0.1",
|
||||
"port": "3260"
|
||||
}
|
||||
|
@ -722,7 +722,6 @@ SPDK_RPC_REGISTER_ALIAS_DEPRECATED(iscsi_get_portal_groups, get_portal_groups)
|
||||
struct rpc_portal {
|
||||
char *host;
|
||||
char *port;
|
||||
char *cpumask;
|
||||
};
|
||||
|
||||
struct rpc_portal_list {
|
||||
@ -740,7 +739,6 @@ free_rpc_portal(struct rpc_portal *portal)
|
||||
{
|
||||
free(portal->host);
|
||||
free(portal->port);
|
||||
free(portal->cpumask);
|
||||
}
|
||||
|
||||
static void
|
||||
@ -763,7 +761,6 @@ free_rpc_portal_group(struct rpc_portal_group *pg)
|
||||
static const struct spdk_json_object_decoder rpc_portal_decoders[] = {
|
||||
{"host", offsetof(struct rpc_portal, host), spdk_json_decode_string},
|
||||
{"port", offsetof(struct rpc_portal, port), spdk_json_decode_string},
|
||||
{"cpumask", offsetof(struct rpc_portal, cpumask), spdk_json_decode_string, true},
|
||||
};
|
||||
|
||||
static int
|
||||
@ -814,11 +811,6 @@ spdk_rpc_iscsi_create_portal_group(struct spdk_jsonrpc_request *request,
|
||||
goto out;
|
||||
}
|
||||
for (i = 0; i < req.portal_list.num_portals; i++) {
|
||||
if (req.portal_list.portals[i].cpumask) {
|
||||
SPDK_WARNLOG("A portal was specified with a CPU mask which is no longer supported.\n");
|
||||
SPDK_WARNLOG("Ignoring the cpumask.\n");
|
||||
}
|
||||
|
||||
portal = spdk_iscsi_portal_create(req.portal_list.portals[i].host,
|
||||
req.portal_list.portals[i].port);
|
||||
if (portal == NULL) {
|
||||
|
@ -242,9 +242,9 @@ static int
|
||||
iscsi_parse_portal(const char *portalstring, struct spdk_iscsi_portal **ip,
|
||||
int dry_run)
|
||||
{
|
||||
char *host = NULL, *port = NULL, *cpumask = NULL;
|
||||
char *host = NULL, *port = NULL;
|
||||
int len, rc = -1;
|
||||
const char *p, *q;
|
||||
const char *p;
|
||||
|
||||
if (portalstring == NULL) {
|
||||
SPDK_ERRLOG("portal error\n");
|
||||
@ -290,54 +290,19 @@ iscsi_parse_portal(const char *portalstring, struct spdk_iscsi_portal **ip,
|
||||
snprintf(port, PORTNUMSTRLEN, "%d", DEFAULT_PORT);
|
||||
}
|
||||
} else {
|
||||
if (p[0] != ':') {
|
||||
SPDK_ERRLOG("portal error\n");
|
||||
goto error_out;
|
||||
}
|
||||
q = strchr(portalstring, '@');
|
||||
if (q == NULL) {
|
||||
q = portalstring + strlen(portalstring);
|
||||
}
|
||||
if (q == p) {
|
||||
SPDK_ERRLOG("no port specified\n");
|
||||
goto error_out;
|
||||
}
|
||||
|
||||
if (!dry_run) {
|
||||
len = q - p - 1;
|
||||
p++;
|
||||
len = strlen(p);
|
||||
port = malloc(len + 1);
|
||||
if (port == NULL) {
|
||||
SPDK_ERRLOG("malloc() failed for port\n");
|
||||
goto error_out;
|
||||
}
|
||||
memcpy(port, p + 1, len);
|
||||
memcpy(port, p, len);
|
||||
port[len] = '\0';
|
||||
}
|
||||
}
|
||||
|
||||
/* Cpumask (IPv4 and IPv6 are the same) */
|
||||
p = strchr(portalstring, '@');
|
||||
if (p != NULL) {
|
||||
q = portalstring + strlen(portalstring);
|
||||
if (q == p) {
|
||||
SPDK_ERRLOG("no cpumask specified\n");
|
||||
goto error_out;
|
||||
}
|
||||
if (!dry_run) {
|
||||
len = q - p - 1;
|
||||
cpumask = malloc(len + 1);
|
||||
if (cpumask == NULL) {
|
||||
SPDK_ERRLOG("malloc() failed for cpumask\n");
|
||||
goto error_out;
|
||||
}
|
||||
memcpy(cpumask, p + 1, len);
|
||||
cpumask[len] = '\0';
|
||||
}
|
||||
}
|
||||
if (cpumask) {
|
||||
SPDK_WARNLOG("The iSCSI target no longer supports setting a per-portal cpumask.\n");
|
||||
}
|
||||
|
||||
if (!dry_run) {
|
||||
*ip = spdk_iscsi_portal_create(host, port);
|
||||
if (!*ip) {
|
||||
@ -349,7 +314,6 @@ iscsi_parse_portal(const char *portalstring, struct spdk_iscsi_portal **ip,
|
||||
error_out:
|
||||
free(host);
|
||||
free(port);
|
||||
free(cpumask);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
@ -141,7 +141,7 @@ portal_create_twice_case(void)
|
||||
static void
|
||||
parse_portal_ipv4_normal_case(void)
|
||||
{
|
||||
const char *string = "192.168.2.0:3260@1";
|
||||
const char *string = "192.168.2.0:3260";
|
||||
const char *host_str = "192.168.2.0";
|
||||
const char *port_str = "3260";
|
||||
struct spdk_iscsi_portal *p = NULL;
|
||||
@ -160,44 +160,6 @@ parse_portal_ipv4_normal_case(void)
|
||||
|
||||
static void
|
||||
parse_portal_ipv6_normal_case(void)
|
||||
{
|
||||
const char *string = "[2001:ad6:1234::]:3260@1";
|
||||
const char *host_str = "[2001:ad6:1234::]";
|
||||
const char *port_str = "3260";
|
||||
struct spdk_iscsi_portal *p = NULL;
|
||||
int rc;
|
||||
|
||||
rc = iscsi_parse_portal(string, &p, 0);
|
||||
CU_ASSERT(rc == 0);
|
||||
SPDK_CU_ASSERT_FATAL(p != NULL);
|
||||
CU_ASSERT(strcmp(p->host, host_str) == 0);
|
||||
CU_ASSERT(strcmp(p->port, port_str) == 0);
|
||||
|
||||
spdk_iscsi_portal_destroy(p);
|
||||
CU_ASSERT(TAILQ_EMPTY(&g_spdk_iscsi.portal_head));
|
||||
}
|
||||
|
||||
static void
|
||||
parse_portal_ipv4_skip_cpumask_case(void)
|
||||
{
|
||||
const char *string = "192.168.2.0:3260";
|
||||
const char *host_str = "192.168.2.0";
|
||||
const char *port_str = "3260";
|
||||
struct spdk_iscsi_portal *p = NULL;
|
||||
int rc;
|
||||
|
||||
rc = iscsi_parse_portal(string, &p, 0);
|
||||
CU_ASSERT(rc == 0);
|
||||
SPDK_CU_ASSERT_FATAL(p != NULL);
|
||||
CU_ASSERT(strcmp(p->host, host_str) == 0);
|
||||
CU_ASSERT(strcmp(p->port, port_str) == 0);
|
||||
|
||||
spdk_iscsi_portal_destroy(p);
|
||||
CU_ASSERT(TAILQ_EMPTY(&g_spdk_iscsi.portal_head));
|
||||
}
|
||||
|
||||
static void
|
||||
parse_portal_ipv6_skip_cpumask_case(void)
|
||||
{
|
||||
const char *string = "[2001:ad6:1234::]:3260";
|
||||
const char *host_str = "[2001:ad6:1234::]";
|
||||
@ -216,7 +178,7 @@ parse_portal_ipv6_skip_cpumask_case(void)
|
||||
}
|
||||
|
||||
static void
|
||||
parse_portal_ipv4_skip_port_and_cpumask_case(void)
|
||||
parse_portal_ipv4_skip_port_case(void)
|
||||
{
|
||||
const char *string = "192.168.2.0";
|
||||
const char *host_str = "192.168.2.0";
|
||||
@ -235,7 +197,7 @@ parse_portal_ipv4_skip_port_and_cpumask_case(void)
|
||||
}
|
||||
|
||||
static void
|
||||
parse_portal_ipv6_skip_port_and_cpumask_case(void)
|
||||
parse_portal_ipv6_skip_port_case(void)
|
||||
{
|
||||
const char *string = "[2001:ad6:1234::]";
|
||||
const char *host_str = "[2001:ad6:1234::]";
|
||||
@ -477,14 +439,10 @@ main(int argc, char **argv)
|
||||
parse_portal_ipv4_normal_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv6 normal case",
|
||||
parse_portal_ipv6_normal_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv4 skip cpumask case",
|
||||
parse_portal_ipv4_skip_cpumask_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv6 skip cpumask case",
|
||||
parse_portal_ipv6_skip_cpumask_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv4 skip port and cpumask case",
|
||||
parse_portal_ipv4_skip_port_and_cpumask_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv6 skip port and cpumask case",
|
||||
parse_portal_ipv6_skip_port_and_cpumask_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv4 skip port case",
|
||||
parse_portal_ipv4_skip_port_case) == NULL
|
||||
|| CU_add_test(suite, "parse portal ipv6 skip port case",
|
||||
parse_portal_ipv6_skip_port_case) == NULL
|
||||
|| CU_add_test(suite, "portal group register/unregister case",
|
||||
portal_grp_register_unregister_case) == NULL
|
||||
|| CU_add_test(suite, "portal group register twice case",
|
||||
|
Loading…
Reference in New Issue
Block a user