[PATCH] drm/fbdev: fix drm_fb_helper_deferred_io() build failure

Dmitry Baryshkov posted 1 patch 1 month, 1 week ago
There is a newer version of this series
drivers/gpu/drm/drm_fb_helper.c | 2 ++
1 file changed, 2 insertions(+)
[PATCH] drm/fbdev: fix drm_fb_helper_deferred_io() build failure
Posted by Dmitry Baryshkov 1 month, 1 week ago
The drm_fb_helper_deferred_io() uses struct fb_deferred_io_pageref,
which isn't available without CONFIG_FB_DEFERRED_IO. Put the function
under corresponding #ifdef to fix build failure if deferred I/O isn't
enabled.

Fixes: 8058944f5226 ("drm/fbdev: Select fbdev I/O helpers from modules that require them")
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
 drivers/gpu/drm/drm_fb_helper.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index d5e8994345bb..c9008113111b 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -697,6 +697,7 @@ void drm_fb_helper_damage_area(struct fb_info *info, u32 x, u32 y, u32 width, u3
 }
 EXPORT_SYMBOL(drm_fb_helper_damage_area);
 
+#ifdef CONFIG_FB_DEFERRED_IO
 /**
  * drm_fb_helper_deferred_io() - fbdev deferred_io callback function
  * @info: fb_info struct pointer
@@ -740,6 +741,7 @@ void drm_fb_helper_deferred_io(struct fb_info *info, struct list_head *pagerefli
 	}
 }
 EXPORT_SYMBOL(drm_fb_helper_deferred_io);
+#endif
 
 /**
  * drm_fb_helper_set_suspend - wrapper around fb_set_suspend

---
base-commit: 2063ca42486bc07b49bc145b5dfcb421f4deebaf
change-id: 20241018-fix-drm-deferred-01c9996c17a6

Best regards,
-- 
Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Re: [PATCH] drm/fbdev: fix drm_fb_helper_deferred_io() build failure
Posted by Thomas Zimmermann 1 month ago
Hi

Am 18.10.24 um 22:35 schrieb Dmitry Baryshkov:
> The drm_fb_helper_deferred_io() uses struct fb_deferred_io_pageref,
> which isn't available without CONFIG_FB_DEFERRED_IO. Put the function
> under corresponding #ifdef to fix build failure if deferred I/O isn't
> enabled.
>
> Fixes: 8058944f5226 ("drm/fbdev: Select fbdev I/O helpers from modules that require them")
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>   drivers/gpu/drm/drm_fb_helper.c | 2 ++

Thanks for this fix. The combination of all these fbdev options is a bit 
of headache. Could you please also protect the function's declaration? [1]

[1] 
https://elixir.bootlin.com/linux/v6.11/source/include/drm/drm_fb_helper.h#L259

Best regards
Thomas

>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
> index d5e8994345bb..c9008113111b 100644
> --- a/drivers/gpu/drm/drm_fb_helper.c
> +++ b/drivers/gpu/drm/drm_fb_helper.c
> @@ -697,6 +697,7 @@ void drm_fb_helper_damage_area(struct fb_info *info, u32 x, u32 y, u32 width, u3
>   }
>   EXPORT_SYMBOL(drm_fb_helper_damage_area);
>   
> +#ifdef CONFIG_FB_DEFERRED_IO
>   /**
>    * drm_fb_helper_deferred_io() - fbdev deferred_io callback function
>    * @info: fb_info struct pointer
> @@ -740,6 +741,7 @@ void drm_fb_helper_deferred_io(struct fb_info *info, struct list_head *pagerefli
>   	}
>   }
>   EXPORT_SYMBOL(drm_fb_helper_deferred_io);
> +#endif
>   
>   /**
>    * drm_fb_helper_set_suspend - wrapper around fb_set_suspend
>
> ---
> base-commit: 2063ca42486bc07b49bc145b5dfcb421f4deebaf
> change-id: 20241018-fix-drm-deferred-01c9996c17a6
>
> Best regards,

-- 
--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Frankenstrasse 146, 90461 Nuernberg, Germany
GF: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman
HRB 36809 (AG Nuernberg)