[PATCH RESEND] samples: rust: fix `rust_print` build making it a combined module

Miguel Ojeda posted 1 patch 2 weeks ago
There is a newer version of this series
samples/rust/Makefile | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
[PATCH RESEND] samples: rust: fix `rust_print` build making it a combined module
Posted by Miguel Ojeda 2 weeks ago
The `rust_print` module, when built as a module, fails to build with:

    ERROR: modpost: missing MODULE_LICENSE() in samples/rust/rust_print_events.o
    ERROR: modpost: "__tracepoint_rust_sample_loaded" [samples/rust/rust_print.ko] undefined!
    ERROR: modpost: "rust_do_trace_rust_sample_loaded" [samples/rust/rust_print.ko] undefined!

Fix it by building it as a combined one.

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Closes: https://lore.kernel.org/all/20241108152149.28459a72@canb.auug.org.au/
Fixes: 91d39024e1b0 ("rust: samples: add tracepoint to Rust sample")
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
---
Steven: please feel free to rebase the original if that is better for
you, but in case you prefer a formal patch on top, here it is. Thanks!

 samples/rust/Makefile | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/samples/rust/Makefile b/samples/rust/Makefile
index f29280ec4820..17017115657d 100644
--- a/samples/rust/Makefile
+++ b/samples/rust/Makefile
@@ -2,6 +2,8 @@
 ccflags-y += -I$(src)				# needed for trace events

 obj-$(CONFIG_SAMPLE_RUST_MINIMAL)		+= rust_minimal.o
-obj-$(CONFIG_SAMPLE_RUST_PRINT)			+= rust_print.o rust_print_events.o
+obj-$(CONFIG_SAMPLE_RUST_PRINT)			+= rust-print.o
+
+rust-print-y := rust_print.o rust_print_events.o

 subdir-$(CONFIG_SAMPLE_RUST_HOSTPROGS)		+= hostprogs

base-commit: 91d39024e1b02914cc5e2dbc137908e29b269ce4
--
2.47.0
Re: [PATCH RESEND] samples: rust: fix `rust_print` build making it a combined module
Posted by Miguel Ojeda 1 week, 5 days ago
On Sat, Nov 9, 2024 at 5:55 PM Miguel Ojeda <ojeda@kernel.org> wrote:
>
>  obj-$(CONFIG_SAMPLE_RUST_MINIMAL)              += rust_minimal.o
> -obj-$(CONFIG_SAMPLE_RUST_PRINT)                        += rust_print.o rust_print_events.o
> +obj-$(CONFIG_SAMPLE_RUST_PRINT)                        += rust-print.o
> +
> +rust-print-y := rust_print.o rust_print_events.o

Steven: if you have not applied this one yet (I think you didn't), I
think it would be best to rename the main source file instead of the
module name, since we already have users and a couple other places we
should rename.

I am sending v2 in case you can pick that one instead.

Cheers,
Miguel
Re: [PATCH RESEND] samples: rust: fix `rust_print` build making it a combined module
Posted by Alice Ryhl 1 week, 6 days ago
On Sat, Nov 9, 2024 at 5:55 PM Miguel Ojeda <ojeda@kernel.org> wrote:
>
> The `rust_print` module, when built as a module, fails to build with:
>
>     ERROR: modpost: missing MODULE_LICENSE() in samples/rust/rust_print_events.o
>     ERROR: modpost: "__tracepoint_rust_sample_loaded" [samples/rust/rust_print.ko] undefined!
>     ERROR: modpost: "rust_do_trace_rust_sample_loaded" [samples/rust/rust_print.ko] undefined!
>
> Fix it by building it as a combined one.
>
> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
> Closes: https://lore.kernel.org/all/20241108152149.28459a72@canb.auug.org.au/
> Fixes: 91d39024e1b0 ("rust: samples: add tracepoint to Rust sample")
> Signed-off-by: Miguel Ojeda <ojeda@kernel.org>

Thanks for fixing this, Miguel!

Reviewed-by: Alice Ryhl <aliceryhl@google.com>