Commit 37a7fff6 authored by Cunyin Chang's avatar Cunyin Chang Committed by Daniel Verkamp
Browse files

iscsi/rpc: change get_target_nodes parallel arrays to objects



This patch makes lun_name:lun_id pair as one object,
the same for the pg_tag:ig_tag.

Change-Id: Ib08450d12bde9b8388d4ae41e214cc0ba64c8b1e
Signed-off-by: default avatarCunyin Chang <cunyin.chang@intel.com>
parent 5ec0b322
Loading
Loading
Loading
Loading
+10 −25
Original line number Diff line number Diff line
@@ -331,43 +331,28 @@ spdk_rpc_get_target_nodes(struct spdk_jsonrpc_server_conn *conn,
			spdk_json_write_string(w, tgtnode->alias);
		}

		/*
		 * TODO: combine portal_group_tags and initiator_group_tags into an array
		 * of objects (needs rpc script changes to match)
		 */

		spdk_json_write_name(w, "portal_group_tags");
		spdk_json_write_name(w, "pg_ig_maps");
		spdk_json_write_array_begin(w);
		for (i = 0; i < tgtnode->maxmap; i++) {
			spdk_json_write_object_begin(w);
			spdk_json_write_name(w, "pg_tag");
			spdk_json_write_int32(w, tgtnode->map[i].pg->tag);
		}
		spdk_json_write_array_end(w);

		spdk_json_write_name(w, "initiator_group_tags");
		spdk_json_write_array_begin(w);
		for (i = 0; i < tgtnode->maxmap; i++) {
			spdk_json_write_name(w, "ig_tag");
			spdk_json_write_int32(w, tgtnode->map[i].ig->tag);
			spdk_json_write_object_end(w);
		}
		spdk_json_write_array_end(w);

		/*
		 * TODO: combine lun_names and lun_ids into an array of objects
		 */

		spdk_json_write_name(w, "lun_names");
		spdk_json_write_name(w, "luns");
		spdk_json_write_array_begin(w);
		for (i = 0; i < tgtnode->dev->maxlun; i++) {
			if (tgtnode->dev->lun[i]) {
				spdk_json_write_object_begin(w);
				spdk_json_write_name(w, "name");
				spdk_json_write_string(w, tgtnode->dev->lun[i]->name);
			}
		}
		spdk_json_write_array_end(w);

		spdk_json_write_name(w, "lun_ids");
		spdk_json_write_array_begin(w);
		for (i = 0; i < tgtnode->dev->maxlun; i++) {
			if (tgtnode->dev->lun[i]) {
				spdk_json_write_name(w, "id");
				spdk_json_write_int32(w, tgtnode->dev->lun[i]->id);
				spdk_json_write_object_end(w);
			}
		}
		spdk_json_write_array_end(w);
+8 −8
Original line number Diff line number Diff line
@@ -295,21 +295,21 @@ def verify_target_nodes_rpc_methods(rpc_py, rpc_param):
    jsonvalues = json.loads(output)
    verify(len(jsonvalues) == 1, 1,
           "get_target_nodes returned {} nodes, expected 1".format(len(jsonvalues)))
    verify(jsonvalues[0]['lun_names'][0] == "Malloc" + str(rpc_param['lun_total']), 1,
           "lun_name value is {}, expected Malloc{}".format(jsonvalues[0]['lun_names'][0], str(rpc_param['lun_total'])))
    verify(jsonvalues[0]['luns'][0]['name'] == "Malloc" + str(rpc_param['lun_total']), 1,
           "lun_name value is {}, expected Malloc{}".format(jsonvalues[0]['luns'][0]['name'], str(rpc_param['lun_total'])))
    name = jsonvalues[0]['name']
    verify(name == "iqn.2016-06.io.spdk:" + rpc_param['target_name'], 1,
           "target name value is {}, expected {}".format(name, "iqn.2016-06.io.spdk:" + rpc_param['target_name']))
    verify(jsonvalues[0]['alias_name'] == rpc_param['alias_name'], 1,
           "target alias_name value is {}, expected {}".format(jsonvalues[0]['alias_name'], rpc_param['alias_name']))
    verify(jsonvalues[0]['lun_ids'][0] == 0, 1,
           "lun id value is {}, expected 0".format(jsonvalues[0]['lun_ids'][0]))
    verify(jsonvalues[0]['initiator_group_tags'][0] == int(initiator_tag), 1,
           "initiator group tag value is {}, expected {}".format(jsonvalues[0]['initiator_group_tags'][0], initiator_tag))
    verify(jsonvalues[0]['luns'][0]['id'] == 0, 1,
           "lun id value is {}, expected 0".format(jsonvalues[0]['luns'][0]['id']))
    verify(jsonvalues[0]['pg_ig_maps'][0]['ig_tag'] == int(initiator_tag), 1,
           "initiator group tag value is {}, expected {}".format(jsonvalues[0]['pg_ig_maps'][0]['ig_tag'], initiator_tag))
    verify(jsonvalues[0]['queue_depth'] == rpc_param['queue_depth'], 1,
           "queue depth value is {}, expected {}".format(jsonvalues[0]['queue_depth'], rpc_param['queue_depth']))
    verify(jsonvalues[0]['portal_group_tags'][0] == int(portal_tag), 1,
           "portal group tag value is {}, expected {}".format(jsonvalues[0]['portal_group_tags'][0], portal_tag))
    verify(jsonvalues[0]['pg_ig_maps'][0]['pg_tag'] == int(portal_tag), 1,
           "portal group tag value is {}, expected {}".format(jsonvalues[0]['pg_ig_maps'][0]['pg_tag'], portal_tag))
    verify(jsonvalues[0]['chap_disabled'] == rpc_param['chap_disable'], 1,
           "chap disable value is {}, expected {}".format(jsonvalues[0]['chap_disabled'], rpc_param['chap_disable']))
    verify(jsonvalues[0]['chap_mutual'] == rpc_param['chap_mutal'], 1,