From 08fcc22f42db8c94cfa563a9bbe373f29a589b2a Mon Sep 17 00:00:00 2001 From: Dariusz Stojaczyk Date: Wed, 18 Oct 2017 10:59:43 +0200 Subject: [PATCH] bdev/gpt: check against get_io_channel failure Added an additional error check. Change-Id: I5b662cdf23fba21cd59fe416829f1c71b9499ca6 Signed-off-by: Dariusz Stojaczyk Reviewed-on: https://review.gerrithub.io/382928 Reviewed-by: Daniel Verkamp Reviewed-by: Jim Harris Tested-by: SPDK Automated Test System --- lib/bdev/gpt/vbdev_gpt.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/bdev/gpt/vbdev_gpt.c b/lib/bdev/gpt/vbdev_gpt.c index 7ec417d26..e8dfbffa5 100644 --- a/lib/bdev/gpt/vbdev_gpt.c +++ b/lib/bdev/gpt/vbdev_gpt.c @@ -327,6 +327,11 @@ vbdev_gpt_read_gpt(struct spdk_bdev *bdev) } gpt_base->ch = spdk_bdev_get_io_channel(gpt_base->part_base.desc); + if (gpt_base->ch == NULL) { + SPDK_ERRLOG("Failed to get an io_channel.\n"); + spdk_bdev_part_base_free(&gpt_base->part_base); + return -1; + } rc = spdk_bdev_read(gpt_base->part_base.desc, gpt_base->ch, gpt_base->gpt.buf, 0, SPDK_GPT_BUFFER_SIZE, spdk_gpt_bdev_complete, gpt_base);