Re: [announce] new tree: "fix all build warnings, on all configs" II

Andi Kleen
2008-10-21T10:30:31Z

Andi Kleen <andi@firstfloor.org> writes:
>> if (battery->have_sysfs_alarm)
>> diff --git a/drivers/acpi/sleep/main.c b/drivers/acpi/sleep/main.c
>> index d13194a..2276d75 100644
>> --- a/drivers/acpi/sleep/main.c
>> +++ b/drivers/acpi/sleep/main.c
>> @@ -63,7 +63,7 @@ void __init acpi_old_suspend_ordering(void)
>> /**
>> * acpi_pm_disable_gpes - Disable the GPEs.
>> */
>> -static int acpi_pm_disable_gpes(void)
>> +static inline int acpi_pm_disable_gpes(void)
>
> Just to satisfy my curiosity, what compiler warning does marking functions inline
> fix?

No reply.

General note: ignoring review comments does not make the problems go away.

The reason I asked is that the patch is very likely wrong.

AFAIK the only warning that can be fixed by this inline would
be a linker section mismatch (that is why I asked).

But for linker section mismatch this is not the correct
change:

- inline is only advisory and gcc is free to disregard it.
So you could get the warning back any time.
- If you really want inlining for correctness you need
to use __always_inline
- Or if it's really to satisfy a linker section mismatch
it's typically better to just declare all inlined functions
in the correct section, e.g. __init

Please fix this properly.

Thanks,
-Andi

--
ak@linux.intel.com