linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type
@ 2016-12-15  4:14 Darren Hart
  2016-12-15 12:44 ` Henrique de Moraes Holschuh
  2016-12-15 18:15 ` Andy Shevchenko
  0 siblings, 2 replies; 4+ messages in thread
From: Darren Hart @ 2016-12-15  4:14 UTC (permalink / raw)
  To: Lyude, Henrique de Moraes Holschuh, Andy Shevchenko
  Cc: linux-next, linux-kernel, platform-drivers-x86

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 "".

Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Lyude <lyude@redhat.com>
Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
Since v1: Initialize type also.

 drivers/platform/x86/thinkpad_acpi.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
index 69cb0da..c408390 100644
--- a/drivers/platform/x86/thinkpad_acpi.c
+++ b/drivers/platform/x86/thinkpad_acpi.c
@@ -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 = "";
 
 	if (acpi_evalf(hkey_handle, &res, "MHKG", "qd")) {
 		/* For X41t, X60t, X61t Tablets... */
-- 
2.9.3


-- 
Darren Hart
Intel Open Source Technology Center

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type
  2016-12-15  4:14 [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type Darren Hart
@ 2016-12-15 12:44 ` Henrique de Moraes Holschuh
  2016-12-15 18:15 ` Andy Shevchenko
  1 sibling, 0 replies; 4+ messages in thread
From: Henrique de Moraes Holschuh @ 2016-12-15 12:44 UTC (permalink / raw)
  To: Darren Hart
  Cc: Lyude, Andy Shevchenko, linux-next, linux-kernel, platform-drivers-x86

On Wed, 14 Dec 2016, 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 "".
> 
> Signed-off-by: Darren Hart <dvhart@linux.intel.com>
> Cc: Lyude <lyude@redhat.com>
> Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
> Cc: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

Acked-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>

> ---
> Since v1: Initialize type also.
> 
>  drivers/platform/x86/thinkpad_acpi.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
> index 69cb0da..c408390 100644
> --- a/drivers/platform/x86/thinkpad_acpi.c
> +++ b/drivers/platform/x86/thinkpad_acpi.c
> @@ -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 = "";
>  
>  	if (acpi_evalf(hkey_handle, &res, "MHKG", "qd")) {
>  		/* For X41t, X60t, X61t Tablets... */
> -- 
> 2.9.3
> 
> 

-- 
  Henrique Holschuh

  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type
  2016-12-15  4:14 [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type Darren Hart
  2016-12-15 12:44 ` Henrique de Moraes Holschuh
@ 2016-12-15 18:15 ` Andy Shevchenko
  2016-12-15 21:16   ` Darren Hart
  1 sibling, 1 reply; 4+ messages in thread
From: Andy Shevchenko @ 2016-12-15 18:15 UTC (permalink / raw)
  To: Darren Hart, Lyude, Henrique de Moraes Holschuh
  Cc: linux-next, linux-kernel, platform-drivers-x86

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 <andriy.shevchenko@linux.intel.com>
Intel Finland Oy

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type
  2016-12-15 18:15 ` Andy Shevchenko
@ 2016-12-15 21:16   ` Darren Hart
  0 siblings, 0 replies; 4+ messages in thread
From: Darren Hart @ 2016-12-15 21:16 UTC (permalink / raw)
  To: Andy Shevchenko
  Cc: Darren Hart, Lyude, Henrique de Moraes Holschuh, linux-next,
	linux-kernel, platform-driver-x86

On Thu, Dec 15, 2016 at 08:15:02PM +0200, Andy Shevchenko wrote:
> 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

Agreed. Fixed, pushed, tagged. Thanks all.

-- 
Darren Hart
Intel Open Source Technology Center

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-12-15 21:17 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-15  4:14 [PATCH v2] platform/x86: thinkpad_acpi: Initialize local in_tablet_mode and type Darren Hart
2016-12-15 12:44 ` Henrique de Moraes Holschuh
2016-12-15 18:15 ` Andy Shevchenko
2016-12-15 21:16   ` Darren Hart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).