blobfs: use new blobstore iter_cb_fn option
Signed-off-by: Jim Harris <james.r.harris@intel.com> Change-Id: I5f9a999e63231f54ba2a2116ec2d6403d9587a3d Reviewed-on: https://review.gerrithub.io/400185 Tested-by: SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by: Maciej Szwed <maciej.szwed@intel.com> Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com> Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
This commit is contained in:
parent
7560f2b2a3
commit
d1165a6539
@ -575,15 +575,7 @@ iter_cb(void *ctx, struct spdk_blob *blob, int rc)
|
|||||||
uint32_t *is_deleted;
|
uint32_t *is_deleted;
|
||||||
size_t value_len;
|
size_t value_len;
|
||||||
|
|
||||||
if (rc == -ENOENT) {
|
if (rc < 0) {
|
||||||
/* Finished iterating */
|
|
||||||
if (_handle_deleted_files(req) == 0) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
args->fn.fs_op_with_handle(args->arg, fs, 0);
|
|
||||||
free_fs_request(req);
|
|
||||||
return;
|
|
||||||
} else if (rc < 0) {
|
|
||||||
args->fn.fs_op_with_handle(args->arg, fs, rc);
|
args->fn.fs_op_with_handle(args->arg, fs, rc);
|
||||||
free_fs_request(req);
|
free_fs_request(req);
|
||||||
return;
|
return;
|
||||||
@ -635,8 +627,6 @@ iter_cb(void *ctx, struct spdk_blob *blob, int rc)
|
|||||||
deleted_file->id = spdk_blob_get_id(blob);
|
deleted_file->id = spdk_blob_get_id(blob);
|
||||||
TAILQ_INSERT_TAIL(&args->op.fs_load.deleted_files, deleted_file, tailq);
|
TAILQ_INSERT_TAIL(&args->op.fs_load.deleted_files, deleted_file, tailq);
|
||||||
}
|
}
|
||||||
|
|
||||||
spdk_bs_iter_next(fs->bs, blob, iter_cb, req);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -671,7 +661,11 @@ load_cb(void *ctx, struct spdk_blob_store *bs, int bserrno)
|
|||||||
}
|
}
|
||||||
|
|
||||||
common_fs_bs_init(fs, bs);
|
common_fs_bs_init(fs, bs);
|
||||||
spdk_bs_iter_first(fs->bs, iter_cb, req);
|
if (_handle_deleted_files(req) == 0) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
args->fn.fs_op_with_handle(args->arg, fs, 0);
|
||||||
|
free_fs_request(req);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -681,6 +675,7 @@ spdk_fs_load(struct spdk_bs_dev *dev, fs_send_request_fn send_request_fn,
|
|||||||
struct spdk_filesystem *fs;
|
struct spdk_filesystem *fs;
|
||||||
struct spdk_fs_cb_args *args;
|
struct spdk_fs_cb_args *args;
|
||||||
struct spdk_fs_request *req;
|
struct spdk_fs_request *req;
|
||||||
|
struct spdk_bs_opts bs_opts;
|
||||||
|
|
||||||
fs = fs_alloc(dev, send_request_fn);
|
fs = fs_alloc(dev, send_request_fn);
|
||||||
if (fs == NULL) {
|
if (fs == NULL) {
|
||||||
@ -707,7 +702,10 @@ spdk_fs_load(struct spdk_bs_dev *dev, fs_send_request_fn send_request_fn,
|
|||||||
args->arg = cb_arg;
|
args->arg = cb_arg;
|
||||||
args->fs = fs;
|
args->fs = fs;
|
||||||
TAILQ_INIT(&args->op.fs_load.deleted_files);
|
TAILQ_INIT(&args->op.fs_load.deleted_files);
|
||||||
spdk_bs_load(dev, NULL, load_cb, req);
|
spdk_bs_opts_init(&bs_opts);
|
||||||
|
bs_opts.iter_cb_fn = iter_cb;
|
||||||
|
bs_opts.iter_cb_arg = req;
|
||||||
|
spdk_bs_load(dev, &bs_opts, load_cb, req);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
Loading…
Reference in New Issue
Block a user