Commit ce301940 authored by Vasilii Ivanov's avatar Vasilii Ivanov Committed by Tomasz Zawadzki
Browse files

lib/bdev: check completion callback against NULL for set QOS



Add checks for cb_fn in synchronous part of spdk_bdev_set_qos_rate_limits.

Change-Id: I30da58c745239a98d06a717b6ae33db5e924af42
Signed-off-by: default avatarVasilii Ivanov <iwanovvvasilij@gmail.com>
Reviewed-on: https://review.spdk.io/c/spdk/spdk/+/26201


Reviewed-by: default avatarTomasz Zawadzki <tomasz@tzawadzki.com>
Reviewed-by: default avatarKonrad Sztyber <ksztyber@nvidia.com>
Community-CI: Mellanox Build Bot
Reviewed-by: default avatarJim Harris <jim.harris@nvidia.com>
Tested-by: default avatarSPDK Automated Test System <spdkbot@gmail.com>
Reviewed-by: default avatarAnkit Kumar <ankit.kumar@samsung.com>
parent 17246e8c
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -10104,7 +10104,9 @@ spdk_bdev_set_qos_rate_limits(struct spdk_bdev *bdev, uint64_t *limits,

	ctx = calloc(1, sizeof(*ctx));
	if (ctx == NULL) {
		if (cb_fn) {
			cb_fn(cb_arg, -ENOMEM);
		}
		return;
	}

@@ -10116,7 +10118,9 @@ spdk_bdev_set_qos_rate_limits(struct spdk_bdev *bdev, uint64_t *limits,
	if (bdev->internal.qos_mod_in_progress) {
		spdk_spin_unlock(&bdev->internal.spinlock);
		free(ctx);
		if (cb_fn) {
			cb_fn(cb_arg, -EAGAIN);
		}
		return;
	}
	bdev->internal.qos_mod_in_progress = true;