Re: [patch 1/4] Linux Kernel Markers - Architecture Independent Code

Mathieu Desnoyers
2007-09-19T18:46:38Z

* Denys Vlasenko (vda.linux@googlemail.com) wrote:
> On Wednesday 19 September 2007 12:37, Mathieu Desnoyers wrote:
> > > Index: linux-2.6-lttng/include/asm-generic/vmlinux.lds.h
> > > ===================================================================
> > > --- linux-2.6-lttng.orig/include/asm-generic/vmlinux.lds.h 2007-09-14 10:11:18.000000000 -0400
> > > +++ linux-2.6-lttng/include/asm-generic/vmlinux.lds.h 2007-09-14 10:11:31.000000000 -0400
> > > @@ -129,6 +133,11 @@
> > > VMLINUX_SYMBOL(__stop___immediate) = .; \
> > > } \
> > > \
> > > + /* Markers: strings */ \
> > > + __markers_strings : AT(ADDR(__markers_strings) - LOAD_OFFSET) { \
> > > + *(__markers_strings) \
> > > + } \
> > > + \
> > > /* Kernel symbol table: strings */ \
> > > __ksymtab_strings : AT(ADDR(__ksymtab_strings) - LOAD_OFFSET) { \
> > > *(__ksymtab_strings) \
> > [...]
> >
> > Do you think I should also remove the __markers_strings section from here ?
>
> Yes.
>
> It will be beneficial if one can read include/asm-generic/vmlinux.lds.h and
> arch/$ARCH/kernel/vmlinux.lds.S and understand which sections in resulting
> vmlinux serve what purpose. A comment atop each section explaining
> its role will be nice. Even more so that not many people are fluent
> in ld script language.
>
> Currently, one will need to grep around (and not only in kernel tree -
> you need to read depmod.c source too) in order to understand the role
> of various sections in vmlinux.
>
> There are dearth of comments in ld scripts, and some sections
> are created "just because I felt like it". For example, there are
> ".data.page_aligned" and ".data.percpu" sections - can you
> easily tell which one has to be a section, and which does not need
> to be one (can be merged with ".data")? Maybe both must be sections?
> Or none of them?
> --
> vda

Oh, wait.. I need it in module.c:

immediateindex = find_sec(hdr, sechdrs, secstrings, "__immediate");

I'll leave the section there then.

Mathieu