On 14-02-20 11:28 PM, [email protected] wrote:
> From: Jan-Simon Möller <[email protected]>
  ^^^^^^^^^^^^^^

This line implies that Jan is the author.

> 
> Attribute aliases don't inherit the link section name when compiled with 
> clang.
> As a result, the linking section needs to be explicitly specified when 
> building
> a module. This behavior is undefined in the standard which is why it differs 
> from
> compiler to compiler.

But is there a good reason why clang doesn't inherit them in the
interest of compatibility with gcc and existing code?

> 
> Author:  PaX Team <[email protected]>
> ML-Post: 
> http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20120507/142707.html
> URL:     http://llvm.linuxfoundation.org
> Merge:   Jan-Simon Möller <[email protected]>

I know we've seen the faceless entity "PaX Team" before, but can we
please not make it worse by adding a bunch of other non standard tag
line formats?  And ideally have a real human name for the author too.

Paul.
--

> Signed-off-by: Jan-Simon Möller <[email protected]>
> Signed-off-by: Behan Webster <[email protected]>
> ---
>  include/linux/init.h | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/include/linux/init.h b/include/linux/init.h
> index e168880..384ec5e 100644
> --- a/include/linux/init.h
> +++ b/include/linux/init.h
> @@ -297,13 +297,14 @@ void __init parse_early_options(char *cmdline);
>  #define module_init(initfn)                                  \
>       static inline initcall_t __inittest(void)               \
>       { return initfn; }                                      \
> -     int init_module(void) __attribute__((alias(#initfn)));
> +     int init_module(void) __section(.init) __attribute__((alias(#initfn)));
>  
>  /* This is only required if you want to be unloadable. */
>  #define module_exit(exitfn)                                  \
>       static inline exitcall_t __exittest(void)               \
>       { return exitfn; }                                      \
> -     void cleanup_module(void) __attribute__((alias(#exitfn)));
> +     void cleanup_module(void) __section(.exit)              \
> +             __attribute__((alias(#exitfn)));
>  
>  #define __setup_param(str, unique_id, fn)    /* nothing */
>  #define __setup(str, func)                   /* nothing */
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to