[Intel-gfx] [PATCH] drm/i915/hwmon: Silence UBSAN uninitialized bool variable warning

Andrzej Hajda andrzej.hajda at intel.com
Fri May 12 09:41:37 UTC 2023


On 10.05.2023 20:36, Ashutosh Dixit wrote:
> Loading i915 on UBSAN enabled kernels (CONFIG_UBSAN/CONFIG_UBSAN_BOOL)
> causes the following warning:
> 
>    UBSAN: invalid-load in drivers/gpu/drm/i915/gt/uc/intel_uc.c:558:2
>    load of value 255 is not a valid value for type '_Bool'
>    Call Trace:
>     dump_stack_lvl+0x57/0x7d
>     ubsan_epilogue+0x5/0x40
>     __ubsan_handle_load_invalid_value.cold+0x43/0x48
>     __uc_init_hw+0x76a/0x903 [i915]
>     ...
>     i915_driver_probe+0xfb1/0x1eb0 [i915]
>     i915_pci_probe+0xbe/0x2d0 [i915]
> 
> The warning happens because during probe i915_hwmon is still not available
> which results in the output boolean variable *old remaining
> uninitialized. Silence the warning by initializing the variable to an
> arbitrary value.
> 
> Signed-off-by: Ashutosh Dixit <ashutosh.dixit at intel.com>


Reviewed-by: Andrzej Hajda <andrzej.hajda at intel.com>

Regards
Andrzej

> ---
>   drivers/gpu/drm/i915/i915_hwmon.c | 5 ++++-
>   1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_hwmon.c b/drivers/gpu/drm/i915/i915_hwmon.c
> index a3bdd9f68a458..685663861bc0b 100644
> --- a/drivers/gpu/drm/i915/i915_hwmon.c
> +++ b/drivers/gpu/drm/i915/i915_hwmon.c
> @@ -502,8 +502,11 @@ void i915_hwmon_power_max_disable(struct drm_i915_private *i915, bool *old)
>   	struct i915_hwmon *hwmon = i915->hwmon;
>   	u32 r;
>   
> -	if (!hwmon || !i915_mmio_reg_valid(hwmon->rg.pkg_rapl_limit))
> +	if (!hwmon || !i915_mmio_reg_valid(hwmon->rg.pkg_rapl_limit)) {
> +		/* Fix uninitialized bool variable warning */
> +		*old = false;
>   		return;
> +	}
>   
>   	mutex_lock(&hwmon->hwmon_lock);
>   



More information about the dri-devel mailing list