Commit f686aa96 authored by Nick Connolly's avatar Nick Connolly Committed by Tomasz Zawadzki
Browse files

test/unit/lib/vhost: 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: default avatarNick Connolly <nick.connolly@mayadata.io>
Change-Id: Ic291ba22cbee121b5c75b80910378b456a217189
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5080


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarAleksey Marchuk <alexeymar@mellanox.com>
parent c70d03f3
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -71,6 +71,19 @@ DEFINE_STUB(rte_vhost_driver_disable_features, int, (const char *path, uint64_t
DEFINE_STUB(rte_vhost_driver_set_features, int, (const char *path, uint64_t features), 0);
DEFINE_STUB(rte_vhost_driver_register, int, (const char *path, uint64_t flags), 0);

DEFINE_STUB(rte_vhost_set_last_inflight_io_split, int,
	    (int vid, uint16_t vring_idx, uint16_t idx), 0);
DEFINE_STUB(rte_vhost_clr_inflight_desc_split, int,
	    (int vid, uint16_t vring_idx, uint16_t last_used_idx, uint16_t idx), 0);
DEFINE_STUB_V(rte_vhost_log_write, (int vid, uint64_t addr, uint64_t len));
DEFINE_STUB_V(vhost_session_mem_register, (struct rte_vhost_memory *mem));
DEFINE_STUB_V(vhost_session_mem_unregister, (struct rte_vhost_memory *mem));
DEFINE_STUB(vhost_get_negotiated_features, int,
	    (int vid, uint64_t *negotiated_features), 0);
DEFINE_STUB(rte_vhost_get_vhost_ring_inflight, int,
	    (int vid, uint16_t vring_idx, struct rte_vhost_ring_inflight *vring), 0);
DEFINE_STUB(vhost_get_mem_table, int, (int vid, struct rte_vhost_memory **mem), 0);

void *
spdk_call_unaffinitized(void *cb(void *arg), void *arg)
{