From e4bfb3d153823e68fafaa71bc70a0484d6e98d18 Mon Sep 17 00:00:00 2001 From: Ziye Yang Date: Wed, 3 Jan 2018 10:25:31 +0800 Subject: [PATCH] bdev: Convert the type to avoid overflow bdev_ch->io_outstanding - NOMEM_THRESHOLD_COUNT can be negative, so change the type, then we can make the comparision correct. Change-Id: I823ceb3dd053f71c1902ee66cf4caba719a7ae7d Signed-off-by: Ziye Yang Reviewed-on: https://review.gerrithub.io/393437 Tested-by: SPDK Automated Test System Reviewed-by: Jim Harris Reviewed-by: Reviewed-by: Ben Walker --- lib/bdev/bdev.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/bdev/bdev.c b/lib/bdev/bdev.c index 7b17753ac..9cbcd9373 100644 --- a/lib/bdev/bdev.c +++ b/lib/bdev/bdev.c @@ -1817,8 +1817,8 @@ spdk_bdev_io_complete(struct spdk_bdev_io *bdev_io, enum spdk_bdev_io_status sta * NOMEM_THRESHOLD_COUNT I/O to complete but for low queue * depth channels we will instead wait for half to complete. */ - bdev_ch->nomem_threshold = spdk_max(bdev_ch->io_outstanding / 2, - bdev_ch->io_outstanding - NOMEM_THRESHOLD_COUNT); + bdev_ch->nomem_threshold = spdk_max((int64_t)bdev_ch->io_outstanding / 2, + (int64_t)bdev_ch->io_outstanding - NOMEM_THRESHOLD_COUNT); return; } }