[tpmdd-devel] tpm: fix node pointer lookup
diff mbox

Message ID 20161115155736.599954-1-arnd@arndb.de
State New
Headers show

Commit Message

Arnd Bergmann Nov. 15, 2016, 3:57 p.m. UTC
A rework left the node pointer uninitialized when the device tree
is not in use:

drivers/char/tpm/tpm_of.c: In function 'read_log_of':
drivers/char/tpm/tpm_of.c:37:8: error: 'np' may be used uninitialized in this function [-Werror=maybe-uninitialized]

This reverts the behavior to what it should be.

Fixes: 4a45d9669ac1 ("tpm: replace of_find_node_by_name() with dev of_node property")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 drivers/char/tpm/tpm_of.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Jarkko Sakkinen Nov. 15, 2016, 5:36 p.m. UTC | #1
On Tue, Nov 15, 2016 at 04:57:11PM +0100, Arnd Bergmann wrote:
> A rework left the node pointer uninitialized when the device tree
> is not in use:
> 
> drivers/char/tpm/tpm_of.c: In function 'read_log_of':
> drivers/char/tpm/tpm_of.c:37:8: error: 'np' may be used uninitialized in this function [-Werror=maybe-uninitialized]
> 
> This reverts the behavior to what it should be.
> 
> Fixes: 4a45d9669ac1 ("tpm: replace of_find_node_by_name() with dev of_node property")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

Arnd, I got patch from Colin a moment earlier so I applied that.
Thank you in any case!

/Jarkko

> ---
>  drivers/char/tpm/tpm_of.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/char/tpm/tpm_of.c b/drivers/char/tpm/tpm_of.c
> index 3af829f3ad59..24fa6afc2e55 100644
> --- a/drivers/char/tpm/tpm_of.c
> +++ b/drivers/char/tpm/tpm_of.c
> @@ -29,8 +29,7 @@ int read_log_of(struct tpm_chip *chip)
>  	struct tpm_bios_log *log;
>  
>  	log = &chip->log;
> -	if (chip->dev.parent->of_node)
> -		np = chip->dev.parent->of_node;
> +	np = chip->dev.parent->of_node;
>  	if (!np)
>  		return -ENODEV;
>  
> -- 
> 2.9.0
> 

------------------------------------------------------------------------------

Patch
diff mbox

diff --git a/drivers/char/tpm/tpm_of.c b/drivers/char/tpm/tpm_of.c
index 3af829f3ad59..24fa6afc2e55 100644
--- a/drivers/char/tpm/tpm_of.c
+++ b/drivers/char/tpm/tpm_of.c
@@ -29,8 +29,7 @@  int read_log_of(struct tpm_chip *chip)
 	struct tpm_bios_log *log;
 
 	log = &chip->log;
-	if (chip->dev.parent->of_node)
-		np = chip->dev.parent->of_node;
+	np = chip->dev.parent->of_node;
 	if (!np)
 		return -ENODEV;