From f4b818434be57c13ec2459bd8fcc846f40803358 Mon Sep 17 00:00:00 2001 From: Nick Connolly Date: Wed, 11 Nov 2020 14:05:47 +0000 Subject: [PATCH] test/unit/lib/scsi: Add unit test stubs With some build environments (e.g. clang, see #1613) linking fails with unresolved references. This is caused by the inclusion of 'unused code' which is usually discarded by the linker. The 'unused code' contains references to functions that have not been 'stubbed' out. The failure can be seen by removing 'LDFLAGS += -Wl,--gc-sections' in spdk.unittest.mk Resolved by adding stubs for missing references. These are never called so return an arbtrary default value. Part of a set of independent changes which Fixes #1613 Signed-off-by: Nick Connolly Change-Id: I0a8606f9ec1743f7ca430f68c90b59f5699155b6 Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5081 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Aleksey Marchuk --- test/unit/lib/scsi/dev.c/dev_ut.c | 3 +++ test/unit/lib/scsi/lun.c/lun_ut.c | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/test/unit/lib/scsi/dev.c/dev_ut.c b/test/unit/lib/scsi/dev.c/dev_ut.c index 95562d1ca..be9b46001 100644 --- a/test/unit/lib/scsi/dev.c/dev_ut.c +++ b/test/unit/lib/scsi/dev.c/dev_ut.c @@ -43,6 +43,9 @@ #include "spdk_internal/mock.h" +DEFINE_STUB(spdk_scsi_lun_is_removing, bool, + (const struct spdk_scsi_lun *lun), false); + static char *g_bdev_names[] = { "malloc0", "malloc1", diff --git a/test/unit/lib/scsi/lun.c/lun_ut.c b/test/unit/lib/scsi/lun.c/lun_ut.c index 6b35df6ba..5501537c0 100644 --- a/test/unit/lib/scsi/lun.c/lun_ut.c +++ b/test/unit/lib/scsi/lun.c/lun_ut.c @@ -63,6 +63,10 @@ DEFINE_STUB_V(_spdk_trace_record, (uint64_t tsc, uint16_t tpoint_id, uint16_t poller_id, uint32_t size, uint64_t object_id, uint64_t arg1)); +DEFINE_STUB(bdev_scsi_get_dif_ctx, bool, + (struct spdk_bdev *bdev, struct spdk_scsi_task *task, + struct spdk_dif_ctx *dif_ctx), false); + static void spdk_lun_ut_cpl_task(struct spdk_scsi_task *task) {