Subject: Re: [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type

From: Andy Shevchenko <[email-masked]>
Date: Thu, 15 Dec 2016 20:15:02 +0200

On Wed, 2016-12-14 at 20:14 -0800, Darren Hart wrote:
> linux-next reported in_tablet_mode and type may be used uninitialized
> after:
> 
> b31800283868 ("platform/x86: thinkpad_acpi: Move tablet detection into
> separate function")
> 
> This turns out to be a false positive as the pr_info call cannot be
> reached if tp_features.hotkey_tablet (global scope) is 0, and
> in_tablet_mode and type are assigned in both places
> tp_features.hotkey_tablet is assigned.
> 
> Regardless, to make it explicit and avoid further reports, initialize
> in_tablet_mode to 0 and type to "".
> 

@@ -3143,8 +3143,8 @@ typedef tpacpi_keymap_entry_t
> tpacpi_keymap_t[TPACPI_HOTKEY_MAP_LEN];
>  
>  static int hotkey_init_tablet_mode(void)
>  {
> -	int in_tablet_mode, res;
> -	char *type;
> +	int in_tablet_mode = 0, res;
> +	char *type = "";

Subtle correction
NULL will work either and takes less memory ;)

P.S. Even pr_*() is NULL-aware

>  
>  	if (acpi_evalf(hkey_handle, &res, "MHKG", "qd")) {
>  		/* For X41t, X60t, X61t Tablets... */
> -- 
> 2.9.3
> 
> 

-- 
Andy Shevchenko <[email-masked]>
Intel Finland Oy