2006-11-17 21:29:05

by Blaisorblade

[permalink] [raw]
Subject: We're still coping with GCC < 3.0

(CC me on replies as I'm not subscribed)
In arch/i386/kernel/irq.c (current git head) I found this comment:

/*
* These should really be __section__(".bss.page_aligned") as well, but
* gcc's 3.0 and earlier don't handle that correctly.
*/
static char softirq_stack[NR_CPUS * THREAD_SIZE]
__attribute__((__aligned__(THREAD_SIZE)));

static char hardirq_stack[NR_CPUS * THREAD_SIZE]
__attribute__((__aligned__(THREAD_SIZE)));

That should be fixed now that we require GCC 3.0, not?

Btw, there are other such comments, like in include/asm-i386/semaphore.h:
sema_init (for GCC 2.7!). That one might not be the case to fix because of the
increased stack usage

I've seen other similar tests around, so I thought that it'd be useful to
centralize all tests for GCC versions to headers like include/compiler.h so
they're promptly removed when deprecating old compilers.

What about this?
--
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
http://www.user-mode-linux.org/~blaisorblade

Chiacchiera con i tuoi amici in tempo reale!
http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com


2006-11-18 04:40:11

by Oleg Verych

[permalink] [raw]
Subject: Re: We're still coping with GCC < 3.0

Hallo.

On 2006-11-17, someone with nick Blaisorblade wrote:
> In arch/i386/kernel/irq.c (current git head) I found this comment:
>
> /*
> * These should really be __section__(".bss.page_aligned") as well, but
> * gcc's 3.0 and earlier don't handle that correctly.
> */
> static char softirq_stack[NR_CPUS * THREAD_SIZE]
> __attribute__((__aligned__(THREAD_SIZE)));
>
> static char hardirq_stack[NR_CPUS * THREAD_SIZE]
> __attribute__((__aligned__(THREAD_SIZE)));
>
> That should be fixed now that we require GCC 3.0, not?
>
> Btw, there are other such comments, like in include/asm-i386/semaphore.h:
> sema_init (for GCC 2.7!). That one might not be the case to fix because of the
> increased stack usage
>
> I've seen other similar tests around, so I thought that it'd be useful to
> centralize all tests for GCC versions to headers like include/compiler.h so
> they're promptly removed when deprecating old compilers.
>
> What about this?

Tested patches to Andrew Morton and code maintainers.
See also:
<http://marc.theaimsgroup.com/?l=linux-kernel&m=116315825009126&w=2>

-- e-mail --
> (CC me on replies as I'm not subscribed)
Cc yourself, isn't this smart idea?
Also, please, honor "Mail-Followup-To" headers and the like.
____