Thread (12 messages) 12 messages, 5 authors, 2015-09-14

RE: [PATCH] ahci: qoriq: fixed using uninitialized variable warnings

From: Yuantian Tang <hidden>
Date: 2015-09-11 05:27:37
Also in: linux-devicetree, lkml

Hi Tejun,

Could you please take the version 1 patch?
The version 2 patch can't address these warnings, and the version 1 can definitely remove them.
In this case, that would cause any hidden bugs, so no worries.

Regards,
Yuantian
-----Original Message-----
From: Tejun Heo [mailto:htejun@gmail.com] On Behalf Of Tejun Heo
Sent: Wednesday, September 09, 2015 10:02 PM
To: Tang Yuantian-B29983 <redacted>
Cc: hdegoede@redhat.com; linux-ide@vger.kernel.org; linux-
kernel@vger.kernel.org; devicetree@vger.kernel.org
Subject: Re: [PATCH] ahci: qoriq: fixed using uninitialized variable warnings

On Wed, Sep 09, 2015 at 05:16:22PM +0800, Yuantian.Tang@freescale.com
wrote:
quoted
From: Tang Yuantian <redacted>

kbuild test robot reports the warnings:
drivers/ata/ahci_qoriq.c: In function 'ahci_qoriq_hardreset':
quoted
quoted
include/asm-generic/io.h:163:2: warning: 'px_is' may be used
uninitialized in this function [-Wuninitialized]
drivers/ata/ahci_qoriq.c:70:14: note: 'px_is' was declared here
quoted
quoted
include/asm-generic/io.h:163:2: warning: 'px_cmd' may be used
uninitialized in this function [-Wuninitialized]
drivers/ata/ahci_qoriq.c:70:6: note: 'px_cmd' was declared here

This patch fixed it by assigning 0 to px_is and px_cmd variables.
This patch also remove line 'struct ccsr_ahci *reg_base' which is not
referred by any other codes and thus a dead one.
Hmm... I think the problem here is that the complier can't know whether
qoriq_priv->type would change across intervening function calls.  Maybe a
better solution is caching the type in a local variable so that the compiler can
tell that those two tests will always move together?  It generally isn't a good
idea to clear variables unnecessarily as that can hide actual bugs that compiler
can detect.

Thanks.

--
tejun
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help