Re: [2.6 patch] acpi/battery.c: make 2 functions static

Adrian Bunk
2008-03-03T09:47:31Z

On Mon, Mar 03, 2008 at 10:17:14AM +0100, Ingo Molnar wrote:
>
> * Adrian Bunk <bunk@kernel.org> wrote:
>
> > On Mon, Mar 03, 2008 at 09:57:20AM +0100, Ingo Molnar wrote:
> > >
> > > * Adrian Bunk <bunk@kernel.org> wrote:
> > >
> > > > On Sat, Mar 01, 2008 at 09:26:41PM +0300, Alexey Starikovskiy wrote:
> > > > > May I keep them inline?
> > > >
> > > > The problem with such manual inlines is that we force gcc to always
> > > > inline them - and history has shown that functions grow without the
> > > > "inline" being removed.
> > >
> > > what do you mean by "we force gcc to always inline them"?
> >
> > #define inline inline __attribute__((always_inline))
> >
> > > gcc is free to decide whether to inline or to not inline.
> >
> > Not with __attribute__((always_inline)).
>
> but that wasnt used in the code you patched:
>
> -inline int acpi_battery_present(struct acpi_battery *battery)
> +static int acpi_battery_present(struct acpi_battery *battery)

It was used, since the #define affects all inline's in the kernel.

> > > (and CONFIG_FORCED_INLINING got removed from 2.6.25)
> >
> > CONFIG_FORCED_INLINING never had any effect.
>
> my experience was that it had effects. Why do you say it 'never had any
> effect'?

I don't see how it could have possibly had any effect.

Which effects did you experience?

> Ingo

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed