Commit 4586880f authored by Jim Harris's avatar Jim Harris Committed by Konrad Sztyber
Browse files

app/fio/bdev: remove use of spdk_subsystem_init_from_json_config



This function is deprecated, use spdk_subsystem_load_config
instead.

Signed-off-by: default avatarJim Harris <jim.harris@samsung.com>
Change-Id: I0eb189550706b6f76df5263b3ad9a62f5fe11be9
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/24663


Community-CI: Mellanox Build Bot
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@nvidia.com>
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
parent ed4ea4d9
Loading
Loading
Loading
Loading
+47 −4
Original line number Diff line number Diff line
@@ -10,6 +10,7 @@
#include "spdk/bdev_zone.h"
#include "spdk/accel.h"
#include "spdk/env.h"
#include "spdk/file.h"
#include "spdk/init.h"
#include "spdk/thread.h"
#include "spdk/log.h"
@@ -108,6 +109,8 @@ struct spdk_fio_oat_ctx {

static bool g_spdk_env_initialized = false;
static const char *g_json_config_file = NULL;
static void *g_json_data;
static size_t g_json_data_size;
static const char *g_rpc_listen_addr = NULL;

static int spdk_fio_init(struct thread_data *td);
@@ -265,20 +268,60 @@ spdk_fio_bdev_init_done(int rc, void *cb_arg)
{
	*(bool *)cb_arg = true;

	if (g_rpc_listen_addr != NULL) {
		if (spdk_rpc_initialize(g_rpc_listen_addr, NULL) == 0) {
	free(g_json_data);
	if (rc) {
		SPDK_ERRLOG("RUNTIME RPCs failed\n");
		exit(1);
	}
}

static void
spdk_fio_bdev_subsystem_init_done(int rc, void *cb_arg)
{
	if (rc) {
		SPDK_ERRLOG("subsystem init failed\n");
		exit(1);
	}

	spdk_rpc_set_state(SPDK_RPC_RUNTIME);
	spdk_subsystem_load_config(g_json_data, g_json_data_size,
				   spdk_fio_bdev_init_done, cb_arg, true);
}

static void
spdk_fio_bdev_startup_done(int rc, void *cb_arg)
{
	if (rc) {
		SPDK_ERRLOG("STARTUP RPCs failed\n");
		exit(1);
	}

	if (g_rpc_listen_addr != NULL) {
		if (spdk_rpc_initialize(g_rpc_listen_addr, NULL) != 0) {
			SPDK_ERRLOG("could not initialize RPC address %s\n", g_rpc_listen_addr);
			exit(1);
		}
	}

	spdk_subsystem_init(spdk_fio_bdev_subsystem_init_done, cb_arg);
}

static void
spdk_fio_bdev_init_start(void *arg)
{
	bool *done = arg;

	spdk_subsystem_init_from_json_config(g_json_config_file, SPDK_DEFAULT_RPC_ADDR,
					     spdk_fio_bdev_init_done, done, true);
	g_json_data = spdk_posix_file_load_from_name(g_json_config_file, &g_json_data_size);

	if (g_json_data == NULL) {
		SPDK_ERRLOG("could not allocate buffer for json config file\n");
		exit(1);
	}

	/* Load SPDK_RPC_STARTUP RPCs from config file */
	assert(spdk_rpc_get_state() == SPDK_RPC_STARTUP);
	spdk_subsystem_load_config(g_json_data, g_json_data_size,
				   spdk_fio_bdev_startup_done, done, true);
}

static void