Re: [PATCH 1/5] kunit: string-stream: export non-static functions

From: David Gow
Date: Sat Jun 08 2024 - 05:20:37 EST


On Tue, 4 Jun 2024 at 20:32, Ivan Orlov <ivan.orlov0322@xxxxxxxxx> wrote:
>
> Export non-static functions from the string-stream.c file into the KUnit
> namespace in order to be able to access them from the KUnit core tests
> (when they are loaded as modules).
>
> Signed-off-by: Ivan Orlov <ivan.orlov0322@xxxxxxxxx>
> ---

Looks good to me, thanks.

It's very slightly hilarious to use EXPORT_SYMBOL_IF_KUNIT() here,
because _of course_ KUnit is enabled, but I think it's the right idea
nevertheless.

Reviewed-by: David Gow <davidgow@xxxxxxxxxx>

Cheers,
-- David


> lib/kunit/string-stream.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/lib/kunit/string-stream.c b/lib/kunit/string-stream.c
> index 54f4fdcbfac8..a5e3339854da 100644
> --- a/lib/kunit/string-stream.c
> +++ b/lib/kunit/string-stream.c
> @@ -10,7 +10,7 @@
> #include <kunit/test.h>
> #include <linux/list.h>
> #include <linux/slab.h>
> -
> +#include <kunit/visibility.h>
> #include "string-stream.h"
>
>
> @@ -86,6 +86,7 @@ int string_stream_vadd(struct string_stream *stream,
>
> return 0;
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_vadd);
>
> int string_stream_add(struct string_stream *stream, const char *fmt, ...)
> {
> @@ -98,6 +99,7 @@ int string_stream_add(struct string_stream *stream, const char *fmt, ...)
>
> return result;
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_add);
>
> void string_stream_clear(struct string_stream *stream)
> {
> @@ -113,6 +115,7 @@ void string_stream_clear(struct string_stream *stream)
> stream->length = 0;
> spin_unlock(&stream->lock);
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_clear);
>
> char *string_stream_get_string(struct string_stream *stream)
> {
> @@ -131,6 +134,7 @@ char *string_stream_get_string(struct string_stream *stream)
>
> return buf;
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_get_string);
>
> int string_stream_append(struct string_stream *stream,
> struct string_stream *other)
> @@ -148,11 +152,13 @@ int string_stream_append(struct string_stream *stream,
>
> return ret;
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_append);
>
> bool string_stream_is_empty(struct string_stream *stream)
> {
> return list_empty(&stream->fragments);
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_is_empty);
>
> struct string_stream *alloc_string_stream(gfp_t gfp)
> {
> @@ -168,6 +174,7 @@ struct string_stream *alloc_string_stream(gfp_t gfp)
>
> return stream;
> }
> +EXPORT_SYMBOL_IF_KUNIT(alloc_string_stream);
>
> void string_stream_destroy(struct string_stream *stream)
> {
> @@ -179,6 +186,7 @@ void string_stream_destroy(struct string_stream *stream)
> string_stream_clear(stream);
> kfree(stream);
> }
> +EXPORT_SYMBOL_IF_KUNIT(string_stream_destroy);
>
> static void resource_free_string_stream(void *p)
> {
> @@ -200,8 +208,10 @@ struct string_stream *kunit_alloc_string_stream(struct kunit *test, gfp_t gfp)
>
> return stream;
> }
> +EXPORT_SYMBOL_IF_KUNIT(kunit_alloc_string_stream);
>
> void kunit_free_string_stream(struct kunit *test, struct string_stream *stream)
> {
> kunit_release_action(test, resource_free_string_stream, (void *)stream);
> }
> +EXPORT_SYMBOL_IF_KUNIT(kunit_free_string_stream);
> --
> 2.34.1
>

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature