Re: [PATCH v2 3/4] rv/reactors: export rv_register_reactor() and rv_unregister_reactor()

Gabriele Monaco <[email protected]> Mon, 03 Aug 2026 08:32:49 +0200
Newsgroups org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On Mon, 2026-08-03 at 02:43 +0800, [email protected] wrote:
> From: Wen Yang <[email protected]>
>=20
> rv_react() is exported to modules, but the reactor registration helpers
> are not.=C2=A0 Export them with EXPORT_SYMBOL_GPL() so reactor modules an=
d
> the tristate KUnit test module can register and unregister reactors
> without hitting undefined symbol errors at load time.

Nit, but I believe you meant /link/ time (modpost). Linking phase would fai=
l at
the end of the build and you wouldn't have anything (.ko) to load.

Anyway patch looks good:

Reviewed-by: Gabriele Monaco <[email protected]>

Thanks,
Gabriele

>=20
> Signed-off-by: Wen Yang <[email protected]>
> ---
> =C2=A0kernel/trace/rv/rv_reactors.c | 2 ++
> =C2=A01 file changed, 2 insertions(+)
>=20
> diff --git a/kernel/trace/rv/rv_reactors.c b/kernel/trace/rv/rv_reactors.=
c
> index cd571b1649f5..228ed043bd73 100644
> --- a/kernel/trace/rv/rv_reactors.c
> +++ b/kernel/trace/rv/rv_reactors.c
> @@ -314,6 +314,7 @@ int rv_register_reactor(struct rv_reactor *reactor)
> =C2=A0=09guard(mutex)(&rv_interface_lock);
> =C2=A0=09return __rv_register_reactor(reactor);
> =C2=A0}
> +EXPORT_SYMBOL_GPL(rv_register_reactor);
> =C2=A0
> =C2=A0/**
> =C2=A0 * rv_unregister_reactor - unregister a rv reactor.
> @@ -327,6 +328,7 @@ int rv_unregister_reactor(struct rv_reactor *reactor)
> =C2=A0=09list_del(&reactor->list);
> =C2=A0=09return 0;
> =C2=A0}
> +EXPORT_SYMBOL_GPL(rv_unregister_reactor);
> =C2=A0
> =C2=A0/*
> =C2=A0 * reacting_on interface.