Commit 2c3591f1 authored by Jim Harris's avatar Jim Harris
Browse files

blob: rename spdk blob metadata functions



spdk_bs_md_resize_blob => spdk_blob_resize
spdk_bs_md_sync_blob => spdk_blob_sync_md
spdk_bs_md_get_xattr_value => spdk_blob_get_xattr_value
spdK_bs_md_get_xattr_names => spdk_blob_get_xattr_names
spdk_blob_md_set_xattr => spdk_blob_set_xattr
spdk_blob_md_remove_xattr => spdk_blob_remove_xattr
spdk_bs_md_close_blob => spdk_blob_close

Signed-off-by: default avatarJim Harris <james.r.harris@intel.com>
Change-Id: I99b593c03bc61354ba6aa5a446b0fc82df1e9ce2

Reviewed-on: https://review.gerrithub.io/391006


Reviewed-by: default avatarBen Walker <benjamin.walker@intel.com>
Tested-by: default avatarSPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: default avatarDaniel Verkamp <daniel.verkamp@intel.com>
parent c2009e9e
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -35,6 +35,18 @@ vfio-pci driver should trigger one "remove" uevent at the very beginning of the
of pci driver, this will make sure the SPDK could detect the event and release the vfio-attached
device Fd and related resource when the device removed.

### Blobstore

A number of functions have been renamed:

spdk_bs_md_resize_blob => spdk_blob_resize
spdk_bs_md_sync_blob => spdk_blob_sync_md
spdk_bs_md_close_blob => spdk_blob_close
spdk_bs_md_get_xattr_names => spdk_blob_get_xattr_names
spdk_bs_md_get_xattr_value => spdk_blob_get_xattr_value
spdk_blob_md_set_xattr => spdk_blob_set_xattr
spdk_blob_md_remove_xattr => spdk_blob_remove_xattr

## v17.10: Logical Volumes

### New dependencies
+17 −25
Original line number Diff line number Diff line
@@ -286,8 +286,7 @@ sync_cb(void *arg1, int bserrno)
		return;
	}

	spdk_bs_md_close_blob(&cli_context->blob, close_cb,
			      cli_context);
	spdk_blob_close(&cli_context->blob, close_cb, cli_context);
}

/*
@@ -307,8 +306,7 @@ open_now_resize_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
	}
	cli_context->blob = blob;

	rc = spdk_bs_md_resize_blob(cli_context->blob,
				    cli_context->num_clusters);
	rc = spdk_blob_resize(cli_context->blob, cli_context->num_clusters);
	if (rc) {
		unload_bs(cli_context, "Error in blob resize",
			  bserrno);
@@ -323,8 +321,7 @@ open_now_resize_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
	 * Always a good idea to sync after MD changes or the changes
	 * may be lost if things aren't closed cleanly.
	 */
	spdk_bs_md_sync_blob(cli_context->blob, sync_cb,
			     cli_context);
	spdk_blob_sync_md(cli_context->blob, sync_cb, cli_context);
}

/*
@@ -440,12 +437,12 @@ show_blob(struct cli_context_t *cli_context)
	val = spdk_blob_get_num_pages(cli_context->blob);
	printf("# of pages: %" PRIu64 "\n", val);

	spdk_bs_md_get_xattr_names(cli_context->blob, &names);
	spdk_blob_get_xattr_names(cli_context->blob, &names);

	printf("# of xattrs: %d\n", spdk_xattr_names_get_count(names));
	printf("xattrs:\n");
	for (i = 0; i < spdk_xattr_names_get_count(names); i++) {
		spdk_bs_md_get_xattr_value(cli_context->blob,
		spdk_blob_get_xattr_value(cli_context->blob,
					  spdk_xattr_names_get_name(names, i),
					  &value, &value_len);
		if ((value_len + 1) > sizeof(data)) {
@@ -560,18 +557,15 @@ set_xattr_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
	cli_context->blob = blob;

	if (cli_context->action == CLI_SET_XATTR) {
		spdk_blob_md_set_xattr(cli_context->blob,
				       cli_context->key,
				       cli_context->value,
				       strlen(cli_context->value) + 1);
		spdk_blob_set_xattr(cli_context->blob, cli_context->key,
				    cli_context->value, strlen(cli_context->value) + 1);
		printf("Xattr has been set.\n");
	} else {
		spdk_blob_md_remove_xattr(cli_context->blob,
					  cli_context->key);
		spdk_blob_remove_xattr(cli_context->blob, cli_context->key);
		printf("Xattr has been removed.\n");
	}

	spdk_bs_md_sync_blob(cli_context->blob, sync_cb, cli_context);
	spdk_blob_sync_md(cli_context->blob, sync_cb, cli_context);
}

/*
@@ -609,8 +603,7 @@ read_dump_cb(void *arg1, int bserrno)
		/* done reading */
		printf("\nFile write complete (to %s).\n", cli_context->file);
		fclose(cli_context->fp);
		spdk_bs_md_close_blob(&cli_context->blob, close_cb,
				      cli_context);
		spdk_blob_close(&cli_context->blob, close_cb, cli_context);
	}
}

@@ -658,7 +651,7 @@ write_imp_cb(void *arg1, int bserrno)
		/* done writing */
		printf("\nBlob import complete (from %s).\n", cli_context->file);
		fclose(cli_context->fp);
		spdk_bs_md_close_blob(&cli_context->blob, close_cb, cli_context);
		spdk_blob_close(&cli_context->blob, close_cb, cli_context);
	}
}

@@ -688,7 +681,7 @@ dump_imp_open_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
					    ALIGN_4K, NULL);
	if (cli_context->buff == NULL) {
		printf("Error in allocating memory\n");
		spdk_bs_md_close_blob(&cli_context->blob, close_cb, cli_context);
		spdk_blob_close(&cli_context->blob, close_cb, cli_context);
		return;
	}
	printf("Working");
@@ -698,7 +691,7 @@ dump_imp_open_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
		cli_context->fp = fopen(cli_context->file, "w");
		if (cli_context->fp == NULL) {
			printf("Error in opening file\n");
			spdk_bs_md_close_blob(&cli_context->blob, close_cb, cli_context);
			spdk_blob_close(&cli_context->blob, close_cb, cli_context);
			return;
		}

@@ -710,7 +703,7 @@ dump_imp_open_cb(void *cb_arg, struct spdk_blob *blob, int bserrno)
		cli_context->fp = fopen(cli_context->file, "r");
		if (cli_context->fp == NULL) {
			printf("Error in opening file\n");
			spdk_bs_md_close_blob(&cli_context->blob, close_cb, cli_context);
			spdk_blob_close(&cli_context->blob, close_cb, cli_context);
			return;
		}

@@ -758,8 +751,7 @@ write_cb(void *arg1, int bserrno)
	} else {
		/* done writing */
		printf("\nBlob fill complete (with 0x%x).\n", cli_context->fill_value);
		spdk_bs_md_close_blob(&cli_context->blob, close_cb,
				      cli_context);
		spdk_blob_close(&cli_context->blob, close_cb, cli_context);
	}
}

+3 −5
Original line number Diff line number Diff line
@@ -168,8 +168,7 @@ read_complete(void *arg1, int bserrno)
	}

	/* Now let's close it and delete the blob in the callback. */
	spdk_bs_md_close_blob(&hello_context->blob, delete_blob,
			      hello_context);
	spdk_blob_close(&hello_context->blob, delete_blob, hello_context);
}

/*
@@ -298,7 +297,7 @@ open_complete(void *cb_arg, struct spdk_blob *blob, int bserrno)
	 * there'd usually be many blobs of various sizes. The resize
	 * unit is a cluster.
	 */
	rc = spdk_bs_md_resize_blob(hello_context->blob, free);
	rc = spdk_blob_resize(hello_context->blob, free);
	if (rc) {
		unload_bs(hello_context, "Error in blob resize",
			  bserrno);
@@ -318,8 +317,7 @@ open_complete(void *cb_arg, struct spdk_blob *blob, int bserrno)
	 * good idea to sync after making metadata changes unless
	 * it has an unacceptable impact on application performance.
	 */
	spdk_bs_md_sync_blob(hello_context->blob, sync_complete,
			     hello_context);
	spdk_blob_sync_md(hello_context->blob, sync_complete, hello_context);
}

/*
+11 −16
Original line number Diff line number Diff line
@@ -235,22 +235,18 @@ void spdk_bs_md_open_blob(struct spdk_blob_store *bs, spdk_blob_id blobid,
/* Resize a blob to 'sz' clusters.
 *
 * These changes are not persisted to disk until
 * spdk_bs_md_sync_blob() is called. */
int spdk_bs_md_resize_blob(struct spdk_blob *blob, size_t sz);
 * spdk_blob_sync_md() is called. */
int spdk_blob_resize(struct spdk_blob *blob, size_t sz);

/* Sync a blob */
/* Make a blob persistent. This applies to open, resize, set xattr,
/* Make a blob persistent. This applies to resize, set xattr,
 * and remove xattr. These operations will not be persistent until
 * the blob has been synced.
 *
 * I/O operations (read/write) are synced independently. See
 * spdk_bs_io_flush_channel().
 */
void spdk_bs_md_sync_blob(struct spdk_blob *blob,
			  spdk_blob_op_complete cb_fn, void *cb_arg);
void spdk_blob_sync_md(struct spdk_blob *blob, spdk_blob_op_complete cb_fn, void *cb_arg);

/* Close a blob. This will automatically sync. */
void spdk_bs_md_close_blob(struct spdk_blob **blob, spdk_blob_op_complete cb_fn, void *cb_arg);
void spdk_blob_close(struct spdk_blob **blob, spdk_blob_op_complete cb_fn, void *cb_arg);

struct spdk_io_channel *spdk_bs_alloc_io_channel(struct spdk_blob_store *bs);

@@ -294,13 +290,12 @@ void spdk_bs_md_iter_first(struct spdk_blob_store *bs,
void spdk_bs_md_iter_next(struct spdk_blob_store *bs, struct spdk_blob **blob,
			  spdk_blob_op_with_handle_complete cb_fn, void *cb_arg);

int spdk_blob_md_set_xattr(struct spdk_blob *blob, const char *name, const void *value,
int spdk_blob_set_xattr(struct spdk_blob *blob, const char *name, const void *value,
			uint16_t value_len);
int spdk_blob_md_remove_xattr(struct spdk_blob *blob, const char *name);
int spdk_bs_md_get_xattr_value(struct spdk_blob *blob, const char *name,
int spdk_blob_remove_xattr(struct spdk_blob *blob, const char *name);
int spdk_blob_get_xattr_value(struct spdk_blob *blob, const char *name,
			      const void **value, size_t *value_len);
int spdk_bs_md_get_xattr_names(struct spdk_blob *blob,
			       struct spdk_xattr_names **names);
int spdk_blob_get_xattr_names(struct spdk_blob *blob, struct spdk_xattr_names **names);

uint32_t spdk_xattr_names_get_count(struct spdk_xattr_names *names);
const char *spdk_xattr_names_get_name(struct spdk_xattr_names *names, uint32_t index);
+1 −1
Original line number Diff line number Diff line
@@ -855,7 +855,7 @@ _vbdev_lvs_examine_finish(void *cb_arg, struct spdk_lvol *lvol, int lvolerrno)
		SPDK_ERRLOG("Cannot create bdev for lvol %s\n", lvol->old_name);
		TAILQ_REMOVE(&lvs->lvols, lvol, link);
		lvs->lvol_count--;
		spdk_bs_md_close_blob(&lvol->blob, _vbdev_lvol_close_cb, lvs);
		spdk_blob_close(&lvol->blob, _vbdev_lvol_close_cb, lvs);
		SPDK_INFOLOG(SPDK_LOG_VBDEV_LVOL, "Opening lvol %s failed\n", lvol->old_name);
		free(lvol->old_name);
		free(lvol);
Loading