kunit: add macro to allow conditionally exposing static symbols to tests
authorRae Moar <rmoar@google.com>
Wed, 7 Dec 2022 01:40:23 +0000 (01:40 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 20 Nov 2023 10:52:08 +0000 (11:52 +0100)
commitcfce1e26b4c93d0b850d3f2de1783ee049ffe870
tree96e53a3cd930e1611932955903dd362a84535be2
parent1d47d1abb4f36ce83ff9e8c97aeabbaab704e9d8
kunit: add macro to allow conditionally exposing static symbols to tests

[ Upstream commit 9c988fae6f6ae3224a568ab985881b66bb50c9ec ]

Create two macros:

VISIBLE_IF_KUNIT - A macro that sets symbols to be static if CONFIG_KUNIT
is not enabled. Otherwise if CONFIG_KUNIT is enabled there is no change to
the symbol definition.

EXPORT_SYMBOL_IF_KUNIT(symbol) - Exports symbol into
EXPORTED_FOR_KUNIT_TESTING namespace only if CONFIG_KUNIT is enabled. Must
use MODULE_IMPORT_NS(EXPORTED_FOR_KUNIT_TESTING) in test file in order to
use symbols.

Signed-off-by: Rae Moar <rmoar@google.com>
Reviewed-by: John Johansen <john.johansen@canonical.com>
Reviewed-by: David Gow <davidgow@google.com>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
Stable-dep-of: 8884ba07786c ("apparmor: fix invalid reference on profile->disconnected")
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/kunit/visibility.h [new file with mode: 0644]