diff mbox series

efi: sysfb_efi: fix W=1 warnings when EFI is not set

Message ID 20250107235312.236247-1-rdunlap@infradead.org
State New
Headers show
Series efi: sysfb_efi: fix W=1 warnings when EFI is not set | expand

Commit Message

Randy Dunlap Jan. 7, 2025, 11:53 p.m. UTC
A build with W=1 fails because there are code and data that are not
needed or used when CONFIG_EFI is not set. Move the "#ifdef CONFIG_EFI"
block to earlier in the source file so that the unused code/data are
not built.

drivers/firmware/efi/sysfb_efi.c:345:39: warning: ‘efifb_fwnode_ops’ defined but not used [-Wunused-const-variable=]
  345 | static const struct fwnode_operations efifb_fwnode_ops = {
      |                                       ^~~~~~~~~~~~~~~~
drivers/firmware/efi/sysfb_efi.c:238:35: warning: ‘efifb_dmi_swap_width_height’ defined but not used [-Wunused-const-variable=]
  238 | static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
      |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/firmware/efi/sysfb_efi.c:188:35: warning: ‘efifb_dmi_system_table’ defined but not used [-Wunused-const-variable=]
  188 | static const struct dmi_system_id efifb_dmi_system_table[] __initconst = {
      |                                   ^~~~~~~~~~~~~~~~~~~~~~

Fixes: 15d27b15de96 ("efi: sysfb_efi: fix build when EFI is not set")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202501071933.20nlmJJt-lkp@intel.com/
Cc: David Rheinsberg <david@readahead.eu>
Cc: Hans de Goede <hdegoede@redhat.com>
Cc: Javier Martinez Canillas <javierm@redhat.com>
Cc: Peter Jones <pjones@redhat.com>
Cc: Simona Vetter <simona@ffwll.ch>
Cc: linux-fbdev@vger.kernel.org
Cc: Ard Biesheuvel <ardb@kernel.org>
Cc: linux-efi@vger.kernel.org
---
 drivers/firmware/efi/sysfb_efi.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Thomas Zimmermann Jan. 8, 2025, 8:08 a.m. UTC | #1
Am 08.01.25 um 00:53 schrieb Randy Dunlap:
> A build with W=1 fails because there are code and data that are not
> needed or used when CONFIG_EFI is not set. Move the "#ifdef CONFIG_EFI"
> block to earlier in the source file so that the unused code/data are
> not built.
>
> drivers/firmware/efi/sysfb_efi.c:345:39: warning: ‘efifb_fwnode_ops’ defined but not used [-Wunused-const-variable=]
>    345 | static const struct fwnode_operations efifb_fwnode_ops = {
>        |                                       ^~~~~~~~~~~~~~~~
> drivers/firmware/efi/sysfb_efi.c:238:35: warning: ‘efifb_dmi_swap_width_height’ defined but not used [-Wunused-const-variable=]
>    238 | static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
>        |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/firmware/efi/sysfb_efi.c:188:35: warning: ‘efifb_dmi_system_table’ defined but not used [-Wunused-const-variable=]
>    188 | static const struct dmi_system_id efifb_dmi_system_table[] __initconst = {
>        |                                   ^~~~~~~~~~~~~~~~~~~~~~
>
> Fixes: 15d27b15de96 ("efi: sysfb_efi: fix build when EFI is not set")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202501071933.20nlmJJt-lkp@intel.com/
> Cc: David Rheinsberg <david@readahead.eu>
> Cc: Hans de Goede <hdegoede@redhat.com>
> Cc: Javier Martinez Canillas <javierm@redhat.com>
> Cc: Peter Jones <pjones@redhat.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: linux-fbdev@vger.kernel.org
> Cc: Ard Biesheuvel <ardb@kernel.org>
> Cc: linux-efi@vger.kernel.org

Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>

> ---
>   drivers/firmware/efi/sysfb_efi.c |    2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-next-20250106.orig/drivers/firmware/efi/sysfb_efi.c
> +++ linux-next-20250106/drivers/firmware/efi/sysfb_efi.c
> @@ -91,6 +91,7 @@ void efifb_setup_from_dmi(struct screen_
>   		_ret_;						\
>   	})
>   
> +#ifdef CONFIG_EFI
>   static int __init efifb_set_system(const struct dmi_system_id *id)
>   {
>   	struct efifb_dmi_info *info = id->driver_data;
> @@ -346,7 +347,6 @@ static const struct fwnode_operations ef
>   	.add_links = efifb_add_links,
>   };
>   
> -#ifdef CONFIG_EFI
>   static struct fwnode_handle efifb_fwnode;
>   
>   __init void sysfb_apply_efi_quirks(void)
>
Javier Martinez Canillas Jan. 8, 2025, 8:22 a.m. UTC | #2
Randy Dunlap <rdunlap@infradead.org> writes:

Hello Randy,

> A build with W=1 fails because there are code and data that are not
> needed or used when CONFIG_EFI is not set. Move the "#ifdef CONFIG_EFI"
> block to earlier in the source file so that the unused code/data are
> not built.
>
> drivers/firmware/efi/sysfb_efi.c:345:39: warning: ‘efifb_fwnode_ops’ defined but not used [-Wunused-const-variable=]
>   345 | static const struct fwnode_operations efifb_fwnode_ops = {
>       |                                       ^~~~~~~~~~~~~~~~
> drivers/firmware/efi/sysfb_efi.c:238:35: warning: ‘efifb_dmi_swap_width_height’ defined but not used [-Wunused-const-variable=]
>   238 | static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
>       |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> drivers/firmware/efi/sysfb_efi.c:188:35: warning: ‘efifb_dmi_system_table’ defined but not used [-Wunused-const-variable=]
>   188 | static const struct dmi_system_id efifb_dmi_system_table[] __initconst = {
>       |                                   ^~~~~~~~~~~~~~~~~~~~~~
>
> Fixes: 15d27b15de96 ("efi: sysfb_efi: fix build when EFI is not set")
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Reported-by: kernel test robot <lkp@intel.com>
> Closes: https://lore.kernel.org/oe-kbuild-all/202501071933.20nlmJJt-lkp@intel.com/
> Cc: David Rheinsberg <david@readahead.eu>
> Cc: Hans de Goede <hdegoede@redhat.com>
> Cc: Javier Martinez Canillas <javierm@redhat.com>
> Cc: Peter Jones <pjones@redhat.com>
> Cc: Simona Vetter <simona@ffwll.ch>
> Cc: linux-fbdev@vger.kernel.org
> Cc: Ard Biesheuvel <ardb@kernel.org>
> Cc: linux-efi@vger.kernel.org
> ---
>  drivers/firmware/efi/sysfb_efi.c |    2 +-

Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
Ard Biesheuvel Jan. 8, 2025, 4:38 p.m. UTC | #3
On Wed, 8 Jan 2025 at 09:22, Javier Martinez Canillas
<javierm@redhat.com> wrote:
>
> Randy Dunlap <rdunlap@infradead.org> writes:
>
> Hello Randy,
>
> > A build with W=1 fails because there are code and data that are not
> > needed or used when CONFIG_EFI is not set. Move the "#ifdef CONFIG_EFI"
> > block to earlier in the source file so that the unused code/data are
> > not built.
> >
> > drivers/firmware/efi/sysfb_efi.c:345:39: warning: ‘efifb_fwnode_ops’ defined but not used [-Wunused-const-variable=]
> >   345 | static const struct fwnode_operations efifb_fwnode_ops = {
> >       |                                       ^~~~~~~~~~~~~~~~
> > drivers/firmware/efi/sysfb_efi.c:238:35: warning: ‘efifb_dmi_swap_width_height’ defined but not used [-Wunused-const-variable=]
> >   238 | static const struct dmi_system_id efifb_dmi_swap_width_height[] __initconst = {
> >       |                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
> > drivers/firmware/efi/sysfb_efi.c:188:35: warning: ‘efifb_dmi_system_table’ defined but not used [-Wunused-const-variable=]
> >   188 | static const struct dmi_system_id efifb_dmi_system_table[] __initconst = {
> >       |                                   ^~~~~~~~~~~~~~~~~~~~~~
> >
> > Fixes: 15d27b15de96 ("efi: sysfb_efi: fix build when EFI is not set")
> > Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> > Reported-by: kernel test robot <lkp@intel.com>
> > Closes: https://lore.kernel.org/oe-kbuild-all/202501071933.20nlmJJt-lkp@intel.com/
> > Cc: David Rheinsberg <david@readahead.eu>
> > Cc: Hans de Goede <hdegoede@redhat.com>
> > Cc: Javier Martinez Canillas <javierm@redhat.com>
> > Cc: Peter Jones <pjones@redhat.com>
> > Cc: Simona Vetter <simona@ffwll.ch>
> > Cc: linux-fbdev@vger.kernel.org
> > Cc: Ard Biesheuvel <ardb@kernel.org>
> > Cc: linux-efi@vger.kernel.org
> > ---
> >  drivers/firmware/efi/sysfb_efi.c |    2 +-
>
> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com>
>

Thanks all. I'll queue this up.
diff mbox series

Patch

--- linux-next-20250106.orig/drivers/firmware/efi/sysfb_efi.c
+++ linux-next-20250106/drivers/firmware/efi/sysfb_efi.c
@@ -91,6 +91,7 @@  void efifb_setup_from_dmi(struct screen_
 		_ret_;						\
 	})
 
+#ifdef CONFIG_EFI
 static int __init efifb_set_system(const struct dmi_system_id *id)
 {
 	struct efifb_dmi_info *info = id->driver_data;
@@ -346,7 +347,6 @@  static const struct fwnode_operations ef
 	.add_links = efifb_add_links,
 };
 
-#ifdef CONFIG_EFI
 static struct fwnode_handle efifb_fwnode;
 
 __init void sysfb_apply_efi_quirks(void)