Re: [PATCH] efi_limit_regions triggers link failure when CONFIG_EFI is not defined

Andy Whitcroft
2006-11-24T17:24:32Z

Andi Kleen wrote:
> On Friday 24 November 2006 17:59, Andy Whitcroft wrote:
>> The following patch is needed to get 2.6.19-rc6-mm1 to compile with
>> CONFIG_EFI disabled. This is the 'shortest' fix. However, it does
>> appear that there is some overlap with EFI implmentation partly
>> being in e820.c and partly in efi.c. It might make sense to move
>> everything efi related over to efi.c.
>
> It compiles here. And the ifdef status hasn't changed at all.

Right, when it was in the function directly the optimiser seems to have
lopped it off nice and early and got rid of the link failure.

> Ah maybe your compiler failed to inline the function so the compiler
> couldn't optimize it away. What compiler were you using? Does it
> go away if you add a "inline" to efi_limit_regions()?

Compiler is as below:

gcc version 3.3.4 (Debian 1:3.3.4-3)

Yes, making efi_limit_regions() inline also seems to work. Can we
guarentee it will be inlined though? I had the feeling that inline was
advisory and if it does not inline then we will get the link failures.

-apw