[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45a7a499-bf80-7cdf-6db8-4792f8bfb7a0@canonical.com>
Date: Tue, 6 Dec 2022 02:07:33 -0800
From: John Johansen <john.johansen@...onical.com>
To: David Gow <davidgow@...gle.com>, Rae Moar <rmoar@...gle.com>
Cc: brendanhiggins@...gle.com, dlatypov@...gle.com,
skhan@...uxfoundation.org, tales.aparecida@...il.com,
kunit-dev@...glegroups.com, linux-kernel@...r.kernel.org,
linux-kselftest@...r.kernel.org, apparmor@...ts.ubuntu.com
Subject: Re: [PATCH v2 1/2] kunit: add macro to allow conditionally exposing
static symbols to tests
On 12/6/22 01:40, David Gow wrote:
> On Tue, Dec 6, 2022 at 5:51 AM Rae Moar <rmoar@...gle.com> wrote:
>>
>> 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@...gle.com>
>> Reviewed-by: John Johansen <john.johansen@...onical.com>
>> Reviewed-by: David Gow <davidgow@...gle.com>
>> ---
>>
>> Changes since v1:
>> - Separated the documentation comments for macros.
>> - Changed copyright date and author for new header file.
>>
>
> This still looks good to me, thanks!
>
> Reviewed-by: David Gow <davidgow@...gle.com>
yep, and you already have my Reviewed-by for this one
>
> Cheers,
> -- David
>
>
>> include/kunit/visibility.h | 33 +++++++++++++++++++++++++++++++++
>> 1 file changed, 33 insertions(+)
>> create mode 100644 include/kunit/visibility.h
>>
>> diff --git a/include/kunit/visibility.h b/include/kunit/visibility.h
>> new file mode 100644
>> index 000000000000..0dfe35feeec6
>> --- /dev/null
>> +++ b/include/kunit/visibility.h
>> @@ -0,0 +1,33 @@
>> +/* SPDX-License-Identifier: GPL-2.0 */
>> +/*
>> + * KUnit API to allow symbols to be conditionally visible during KUnit
>> + * testing
>> + *
>> + * Copyright (C) 2022, Google LLC.
>> + * Author: Rae Moar <rmoar@...gle.com>
>> + */
>> +
>> +#ifndef _KUNIT_VISIBILITY_H
>> +#define _KUNIT_VISIBILITY_H
>> +
>> +#if IS_ENABLED(CONFIG_KUNIT)
>> + /**
>> + * 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.
>> + */
>> + #define VISIBLE_IF_KUNIT
>> + /**
>> + * 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.
>> + */
>> + #define EXPORT_SYMBOL_IF_KUNIT(symbol) EXPORT_SYMBOL_NS(symbol, \
>> + EXPORTED_FOR_KUNIT_TESTING)
>> +#else
>> + #define VISIBLE_IF_KUNIT static
>> + #define EXPORT_SYMBOL_IF_KUNIT(symbol)
>> +#endif
>> +
>> +#endif /* _KUNIT_VISIBILITY_H */
>> --
>> 2.39.0.rc0.267.gcb52ba06e7-goog
>>
Powered by blists - more mailing lists