[PATCH 05/11] vmlinux.lds.h: Preserve DTB sections from being discarded after init
Masahiro Yamada
masahiroy at kernel.org
Mon Sep 23 19:45:58 PDT 2024
On Tue, Sep 24, 2024 at 3:13 AM Stephen Boyd <sboyd at kernel.org> wrote:
>
> Quoting Masahiro Yamada (2024-09-22 01:14:12)
> >
> > Rather, I'd modify my patch as follows:
> >
> > --- a/scripts/Makefile.dtbs
> > +++ b/scripts/Makefile.dtbs
> > @@ -34,12 +34,14 @@ $(obj)/dtbs-list: $(dtb-y) FORCE
> > # Assembly file to wrap dtb(o)
> > # ---------------------------------------------------------------------------
> >
> > +builtin-dtb-section = $(if $(filter arch/%, $(obj)),.dtb.init.rodata,.rodata)
>
> I think we want to free the empty root dtb that's always builtin. That
> is in drivers/of/ right?
drivers/of/empty_root.dts is really small.
That is not a big deal even if empty_root.dtb
remains in the .rodata section.
> And I worry that an overlay could be in arch/
> and then this breaks again. That's why it feels more correct to treat
> dtbo.o vs. dtb.o differently. Perhaps we can check $(obj) for dtbo vs
> dtb?
This is not a problem either.
Checking $(obj)/ is temporary.
See this later patch:
https://lore.kernel.org/linux-kbuild/20240904234803.698424-16-masahiroy@kernel.org/T/#u
After my work is completed, DTB and DTBO will go
to the .rodata section unconditionally.
> Also, modpost code looks for .init* named sections and treats them as
> initdata already. Can we rename .dtb.init.rodata to .init.dtb.rodata so
> that modpost can find that?
My previous patch checked .dtb.init.rodata.
I do not mind renaming it to .init.dtb.rodata.
--
Best Regards
Masahiro Yamada
More information about the linux-arm-kernel
mailing list