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

From: Andi Kleen
Date: Tue Oct 21 2008 - 06:30:32 EST


Andi Kleen <andi@xxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/