Re: [PATCH v3 07/16] kbuild: introduce blob framework
From: Masahiro Yamada
Date: Mon Jun 16 2025 - 11:39:10 EST
On Wed, Jun 11, 2025 at 4:38 PM Thomas Weißschuh
<thomas.weissschuh@xxxxxxxxxxxxx> wrote:
>
> Various subsystems embed non-code build artifacts into the kernel,
> for example the initramfs, /proc/config.gz, vDSO image, etc.
> Currently each user has their own implementation for that.
>
> Add a common "blob" framework to provide this functionality.
> It provides standard kbuild and C APIs to embed and later access non-code
> build artifacts into the kernel image or modules.
>
> Reviewed-by: Nicolas Schier <n.schier@xxxxxx>
> Signed-off-by: Thomas Weißschuh <thomas.weissschuh@xxxxxxxxxxxxx>
Kbuild provides only a small set of syntaxes, yet it's flexible enough
to allow each Makefile to implement what it needs.
I aim to keep Kbuild scripts as simple as possible and avoid over-engineering.
Instead, you can implement this in lib/kunit/Makefile.kunit-uapi or somewhere.
That way, I do not have to be worried about what you do.
Also, your separate blob approach looks questionable to me.
In your approach, the blob (kunit-example-uapi.blob.o)
and the entry point (kunit-example-test.o) can be separate modules.
The entry point would be a small amount of boilerplate.
I would keep the user-program blob and its entry point in the same C file.
(and I may consider writing a macro for populating a blob + knit entry)
> ---
> Due to its closeness to kbuild this is currently added to its MAINTAINER entry.
> But I can also maintain it on its own.
Or, maybe do not add this.
--
Best Regards
Masahiro Yamada