Re: [PATCH] thermal: devfreq_cooling: inline all stubs for CONFIG_DEVFREQ_THERMAL=n

From: Thomas Zimmermann
Date: Mon Apr 06 2020 - 07:10:16 EST




Am 03.04.20 um 22:51 schrieb Martin Blumenstingl:
> When CONFIG_DEVFREQ_THERMAL is disabled all functions except
> of_devfreq_cooling_register_power() were already inlined. Also inline
> the last function to avoid compile errors when multiple drivers call
> of_devfreq_cooling_register_power() when CONFIG_DEVFREQ_THERMAL is not
> set. Compilation failed with the following message:
> multiple definition of `of_devfreq_cooling_register_power'
> (which then lists all usages of of_devfreq_cooling_register_power())
>
> Thomas Zimmermann reported this problem [0] on a kernel config with
> CONFIG_DRM_LIMA={m,y}, CONFIG_DRM_PANFROST={m,y} and
> CONFIG_DEVFREQ_THERMAL=n after both, the lima and panfrost drivers
> gained devfreq cooling support.
>
> [0] https://www.spinics.net/lists/dri-devel/msg252825.html
>
> Fixes: a76caf55e5b356 ("thermal: Add devfreq cooling")
> Cc: stable@xxxxxxxxxxxxxxx
> Reported-by: Thomas Zimmermann <tzimmermann@xxxxxxx>
> Signed-off-by: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>

Tested-by: Thomas Zimmermann <tzimmermann@xxxxxxx>

> ---
> include/linux/devfreq_cooling.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/linux/devfreq_cooling.h b/include/linux/devfreq_cooling.h
> index 4635f95000a4..79a6e37a1d6f 100644
> --- a/include/linux/devfreq_cooling.h
> +++ b/include/linux/devfreq_cooling.h
> @@ -75,7 +75,7 @@ void devfreq_cooling_unregister(struct thermal_cooling_device *dfc);
>
> #else /* !CONFIG_DEVFREQ_THERMAL */
>
> -struct thermal_cooling_device *
> +static inline struct thermal_cooling_device *
> of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
> struct devfreq_cooling_power *dfc_power)
> {
>

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 NÃrnberg, Germany
(HRB 36809, AG NÃrnberg)
GeschÃftsfÃhrer: Felix ImendÃrffer

Attachment: signature.asc
Description: OpenPGP digital signature