All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@osdl.org>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: stsp@aknet.ru, linux-kernel@vger.kernel.org
Subject: Re: the creation of boot_cpu_init() is wrong and accessing uninitialised data
Date: Tue, 27 Jun 2006 19:57:43 -0700	[thread overview]
Message-ID: <20060627195743.ce18afe3.akpm@osdl.org> (raw)
In-Reply-To: <1151462735.5793.2.camel@mulgrave.il.steeleye.com>

On Tue, 27 Jun 2006 22:45:34 -0400
James Bottomley <James.Bottomley@SteelEye.com> wrote:

> On Tue, 2006-06-27 at 17:04 -0700, Andrew Morton wrote:
> > +static void __init __attribute__((weak)) smp_setup_processor_id(void)
> 
> If you're really sure this works .. then it looks OK.

We do it quite a lot actually.
box:/usr/src/linux-2.6.17> grep -r 'attribute.*weak' . | wc -l
91

>  However, I
> thought weak was a linker attribute, not a compiler one.

Yes, it is mainly a linker thing.  But the compiler has to emit the ".weak"
pseudo-op and not inline the function.

>  How does the
> compiler know if the static inline needs to be incorporated or if a
> strong symbol is going to override it when the whole thing is linked
> together at the time it just compiles main.c?

I didn't mark it inline.

If the compiler chose to inline it then that would be rather dumb of it,
given that it had the weak attribute.  But yes, paranoia says we should be
tagging this noinline too.

> > Is that all OK?
> 
> I'll give it a whirl tomorrow when I get access to one of the voyager
> systems in Columbia.

Thanks.

  reply	other threads:[~2006-06-28  2:57 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-27  2:45 the creation of boot_cpu_init() is wrong and accessing uninitialised data James Bottomley
2006-06-27  3:04 ` Andrew Morton
2006-06-27  3:36   ` James Bottomley
2006-06-27  5:03     ` Andrew Morton
2006-06-27 13:00       ` Keith Owens
2006-06-27 14:01         ` James Bottomley
2006-06-27 14:49       ` James Bottomley
2006-06-28  0:04         ` Andrew Morton
2006-06-28  2:45           ` James Bottomley
2006-06-28  2:57             ` Andrew Morton [this message]
2006-06-28 23:10               ` James Bottomley
2006-06-29 16:58                 ` James Bottomley
2006-07-02 14:52                   ` Eric W. Biederman
2006-07-02 15:06                     ` James Bottomley
2006-07-02 15:37                       ` Eric W. Biederman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060627195743.ce18afe3.akpm@osdl.org \
    --to=akpm@osdl.org \
    --cc=James.Bottomley@SteelEye.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stsp@aknet.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.