[PATCH] efi: x86/xen: fix -Wmissing-prototypes warning

maqiang posted 1 patch 3 years, 9 months ago
Failed in applying to current master (apply log)
arch/x86/xen/efi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] efi: x86/xen: fix -Wmissing-prototypes warning
Posted by maqiang 3 years, 9 months ago
We get 1 warning when building kernel with W=1:
arch/x86/xen/efi.c:130:13: warning:
 no previous prototype for ‘xen_efi_init’ [-Wmissing-prototypes]
 void __init xen_efi_init(struct boot_params *boot_params)

In fact, this function is declared as a static inline function
in header file, but is not decorated as a static inline function
in source file.
So this patch marks this function with 'static inline'.

Signed-off-by: maqiang <maqianga@uniontech.com>
---
 arch/x86/xen/efi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c
index 7d7ffb9c826a..cf2e9ff3866d 100644
--- a/arch/x86/xen/efi.c
+++ b/arch/x86/xen/efi.c
@@ -127,7 +127,7 @@ static enum efi_secureboot_mode xen_efi_get_secureboot(void)
 	return efi_secureboot_mode_enabled;
 }
 
-void __init xen_efi_init(struct boot_params *boot_params)
+static inline void __init xen_efi_init(struct boot_params *boot_params)
 {
 	efi_system_table_t *efi_systab_xen;
 
-- 
2.20.1




Re: [PATCH] efi: x86/xen: fix -Wmissing-prototypes warning
Posted by Jürgen Groß 3 years, 9 months ago
On 03.03.21 10:36, maqiang wrote:
> We get 1 warning when building kernel with W=1:
> arch/x86/xen/efi.c:130:13: warning:
>   no previous prototype for ‘xen_efi_init’ [-Wmissing-prototypes]
>   void __init xen_efi_init(struct boot_params *boot_params)
> 
> In fact, this function is declared as a static inline function
> in header file, but is not decorated as a static inline function
> in source file.
> So this patch marks this function with 'static inline'.
> 
> Signed-off-by: maqiang <maqianga@uniontech.com>
> ---
>   arch/x86/xen/efi.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/arch/x86/xen/efi.c b/arch/x86/xen/efi.c
> index 7d7ffb9c826a..cf2e9ff3866d 100644
> --- a/arch/x86/xen/efi.c
> +++ b/arch/x86/xen/efi.c
> @@ -127,7 +127,7 @@ static enum efi_secureboot_mode xen_efi_get_secureboot(void)
>   	return efi_secureboot_mode_enabled;
>   }
>   
> -void __init xen_efi_init(struct boot_params *boot_params)
> +static inline void __init xen_efi_init(struct boot_params *boot_params)

This is an absolutely wrong "fix". You are breaking a normal build
as xen_efi_init() will no longer be callable from other sources.


Juergen