Commit 38ea8d54 authored by Krzysztof Karas's avatar Krzysztof Karas Committed by Tomasz Zawadzki
Browse files

spdk_top: fix memory leaks upon exiting application



Fixes momory leak in spdk_top upon exiting due to not freeing
json response.

Fixes #2129

Change-Id: Ia0fee94e2c12dceda921cc540f6e3466ef4f6905
Signed-off-by: default avatarKrzysztof Karas <krzysztof.karas@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9313


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: default avatarChangpeng Liu <changpeng.liu@intel.com>
Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
parent a4b7f87b
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -545,6 +545,7 @@ rpc_send_req(char *rpc_name, struct spdk_jsonrpc_client_response **resp)

	/* Check for error response */
	if (json_resp->error != NULL) {
		spdk_jsonrpc_client_free_response(json_resp);
		return -1;
	}

@@ -2733,8 +2734,6 @@ wait_init(pthread_t *data_thread)
	print_in_middle(stdscr, FIRST_DATA_ROW, 1, max_col, uninit_log, COLOR_PAIR(5));
	rc = rpc_send_req("framework_wait_init", &json_resp);
	if (rc) {
		spdk_jsonrpc_client_free_response(json_resp);

		while (1) {
			print_in_middle(stdscr, FIRST_DATA_ROW, 1, max_col, uninit_error, COLOR_PAIR(8));
			c = getch();
@@ -2762,9 +2761,12 @@ wait_init(pthread_t *data_thread)
	}

	if (rpc_decode_tick_rate(json_resp->result, &tick_rate)) {
		spdk_jsonrpc_client_free_response(json_resp);
		return -EINVAL;
	}

	spdk_jsonrpc_client_free_response(json_resp);

	g_tick_rate = tick_rate;

	/* This is to get first batch of data for display functions.