Re: [PATCH 1/2] Allow constructor name selection by architecture.

From: Sam Ravnborg
Date: Mon Apr 01 2013 - 17:58:41 EST


On Mon, Apr 01, 2013 at 05:47:38PM -0400, George G. Davis wrote:
> On Jun 6, 2012, at 6:12 AM, Russell King - ARM Linux wrote:
> > On Tue, May 29, 2012 at 10:06:14AM +0100, Russell King - ARM Linux wrote:
> >> On Mon, May 28, 2012 at 10:30:05PM +0200, Sam Ravnborg wrote:
> >>> On Mon, May 28, 2012 at 07:33:37PM +0100, Vincent Sanders wrote:
> >>>> From: Vincent Sanders <vince@xxxxxxxxxxxxxxx>
> >>>>
> >>>> The constructor symbol name is different between platforms. Allow this
> >>>> to be selected by configuration and set suitable default values.
> >>>>
> >>>> Signed-off-by: Vincent Sanders <vincent.sanders@xxxxxxxxxxxxxxx>
> >>>> ---
> >>>> include/asm-generic/vmlinux.lds.h | 6 +++---
> >>>> init/Kconfig | 6 ++++++
> >>>> kernel/module.c | 2 +-
> >>>> 3 files changed, 10 insertions(+), 4 deletions(-)
> >>>>
> >>>> diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
> >>>> index 8aeadf6..fd34808 100644
> >>>> --- a/include/asm-generic/vmlinux.lds.h
> >>>> +++ b/include/asm-generic/vmlinux.lds.h
> >>>> @@ -471,9 +471,9 @@
> >>>> }
> >>>>
> >>>> #ifdef CONFIG_CONSTRUCTORS
> >>>> -#define KERNEL_CTORS() . = ALIGN(8); \
> >>>> - VMLINUX_SYMBOL(__ctors_start) = .; \
> >>>> - *(.ctors) \
> >>>> +#define KERNEL_CTORS() . = ALIGN(8); \
> >>>> + VMLINUX_SYMBOL(__ctors_start) = .; \
> >>>> + *(CONFIG_CONSTRUCTORS_NAME) \
> >>>> VMLINUX_SYMBOL(__ctors_end) = .;
> >>>
> >>> What is wrong with adding both "standard" names for ctors uncnditionally?
> >>> Like this:
> >>>> *(.ctors) \
> >>>> + *(.init_array) \
> >>
> >> That doesn't get rid of CONFIG_CONSTRUCTORS_NAME, because it's needed
> >> in the module code. Do you have a suggestion to solve that as well?
> >
> > Ping.
>
> Pinging this back to life. I'd like to see GCOV for ARM eABI finally make it upstream.
> So, any objections to this? Should it be resubmitted?

Why is CONFIG_CONSTRUCTORS_NAME needed in module code?

Sam
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/