lkml.org 
[lkml]   [2006]   [Sep]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 2/3] FRV: Permit __do_IRQ() to be dispensed with
From
Date
On Sat, 2006-09-09 at 07:12 +0200, Ingo Molnar wrote:
> * David Howells <dhowells@redhat.com> wrote:
>
> > +#ifndef CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ
>
> > +#ifdef CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ
>
> > +#ifndef CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ
>
> I think the myriad of arch switches and the resulting #ifdef noise, just
> to get rid of a _single_ unused global function, is pretty lame. (and
> that's of course not your fault)
>
> The real solution would be to use gcc -ffunction-sections plus ld
> --gc-sections to automatically get rid of unused global functions, at
> link time. I'm wondering how hard it would be to enhance kbuild to do
> that - x86_64 already uses -ffunction-sections (if CONFIG_REORDER), so
> the big question is how usable is ld --gc-sections. Such a feature would
> be quite important for embedded systems (and for RAM footprint in
> general) as it would save a significant amount of .text and .data.

It can't optimize __do_IRQ() out in any case if one uses
generic_handle_irq() because of the test in there which can't be
predicted at compile time. My fault ... Maybe we should go back to
having generic_handle_irq() not do the NULL test and not call __do_IRQ()
and have another generic_handle_irq_compat() or some stupid name like
that do what the current generic_handle_irq() does. I added that to
handle the case of partial conversion (which we still have to deal with
on powerpc as arch/ppc hasn't been converted).

Ben.


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

\
 
 \ /
  Last update: 2006-09-09 09:31    [W:0.112 / U:0.788 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site