Commit e939a432 authored by Jim Harris's avatar Jim Harris Committed by Tomasz Zawadzki
Browse files

blobfs: deprecate this library



blobfs was originally designed to support an SPDK-based RocksDB
plugin. It was not able to show any meaningful performance advantages,
so it has been effectively unmaintained for a long time. So let's
remove it to avoid keeping around an unmaintained module that has
limited if any real use.

Signed-off-by: default avatarJim Harris <jim.harris@nvidia.com>
Change-Id: I9814b9235877347c74ad517621585d307fa97e50
Reviewed-on: https://review.spdk.io/c/spdk/spdk/+/25944


Tested-by: default avatarSPDK Automated Test System <spdkbot@gmail.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz@tzawadzki.com>
Reviewed-by: default avatarKonrad Sztyber <ksztyber@nvidia.com>
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
parent aa24f024
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -56,3 +56,11 @@ are officially marked as such to ensure the library's deprecation is noticed.
The entire bdev compress module is deprecated and will be removed in 25.09
release. The C module exports no public APIs, so none are listed here, but
the module will emit deprecation warnings when usage is detected.

### blobfs

#### 'spdk_fs_init', 'spdk_fs_load', 'blobfs_\*' RPCs

This entire blobfs library is deprecated and will be removed in 25.09 release.
All functions in this library are effectively deprecated, but only these two
are officially marked as such to ensure the library's deprecation is noticed.
+4 −0
Original line number Diff line number Diff line
@@ -575,6 +575,8 @@ __wake_caller(void *arg, int fserrno)
	sem_post(args->sem);
}

SPDK_LOG_DEPRECATION_REGISTER(blobfs_library, "blobfs library", "v25.09", 0)

void
spdk_fs_init(struct spdk_bs_dev *dev, struct spdk_blobfs_opts *opt,
	     fs_send_request_fn send_request_fn,
@@ -585,6 +587,7 @@ spdk_fs_init(struct spdk_bs_dev *dev, struct spdk_blobfs_opts *opt,
	struct spdk_fs_cb_args *args;
	struct spdk_bs_opts opts = {};

	SPDK_LOG_DEPRECATED(blobfs_library);
	fs = fs_alloc(dev, send_request_fn);
	if (fs == NULL) {
		cb_fn(cb_arg, NULL, -ENOMEM);
@@ -826,6 +829,7 @@ spdk_fs_load(struct spdk_bs_dev *dev, fs_send_request_fn send_request_fn,
	struct spdk_fs_request *req;
	struct spdk_bs_opts	bs_opts;

	SPDK_LOG_DEPRECATED(blobfs_library);
	fs = fs_alloc(dev, send_request_fn);
	if (fs == NULL) {
		cb_fn(cb_arg, NULL, -ENOMEM);
+4 −0
Original line number Diff line number Diff line
@@ -3606,6 +3606,7 @@ Format: 'user:u1 secret:s1 muser:mu1 msecret:ms1,user:u2 secret:s2 muser:mu2 mse

    # blobfs
    def blobfs_detect(args):
        print("blobfs_detect RPC is deprecated", file=sys.stderr)
        print(rpc.blobfs.blobfs_detect(args.client,
                                       bdev_name=args.bdev_name))

@@ -3614,6 +3615,7 @@ Format: 'user:u1 secret:s1 muser:mu1 msecret:ms1,user:u2 secret:s2 muser:mu2 mse
    p.set_defaults(func=blobfs_detect)

    def blobfs_create(args):
        print("blobfs_create RPC is deprecated", file=sys.stderr)
        print(rpc.blobfs.blobfs_create(args.client,
                                       bdev_name=args.bdev_name,
                                       cluster_sz=args.cluster_sz))
@@ -3625,6 +3627,7 @@ Format: 'user:u1 secret:s1 muser:mu1 msecret:ms1,user:u2 secret:s2 muser:mu2 mse
    p.set_defaults(func=blobfs_create)

    def blobfs_mount(args):
        print("blobfs_mount RPC is deprecated", file=sys.stderr)
        print(rpc.blobfs.blobfs_mount(args.client,
                                      bdev_name=args.bdev_name,
                                      mountpoint=args.mountpoint))
@@ -3635,6 +3638,7 @@ Format: 'user:u1 secret:s1 muser:mu1 msecret:ms1,user:u2 secret:s2 muser:mu2 mse
    p.set_defaults(func=blobfs_mount)

    def blobfs_set_cache_size(args):
        print("blobfs_set_cache_size RPC is deprecated", file=sys.stderr)
        print(rpc.blobfs.blobfs_set_cache_size(args.client,
                                               size_in_mb=args.size_in_mb))