OSDN Git Service

PCI: mvebu: Fix uninitialized variable in mvebu_get_tgt_attr()
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Wed, 17 Sep 2014 15:58:27 +0000 (17:58 +0200)
committerBjorn Helgaas <bhelgaas@google.com>
Mon, 22 Sep 2014 20:40:17 +0000 (14:40 -0600)
commit56fab6e189441d714a2bfc8a64f3df9c0749dff7
treea3b0451c030c9e04f74bd415115eab08a4334216
parent52addcf9d6669fa439387610bc65c92fa0980cef
PCI: mvebu: Fix uninitialized variable in mvebu_get_tgt_attr()

Geert Uytterhoeven reported a warning when building pci-mvebu:

  drivers/pci/host/pci-mvebu.c: In function 'mvebu_get_tgt_attr':
  drivers/pci/host/pci-mvebu.c:887:39: warning: 'rtype' may be used uninitialized in this function [-Wmaybe-uninitialized]
     if (slot == PCI_SLOT(devfn) && type == rtype) {
 ^

And indeed, the code of mvebu_get_tgt_attr() may lead to the usage of rtype
when being uninitialized, even though it would only happen if we had
entries other than I/O space and 32 bits memory space.

This commit fixes that by simply skipping the current DT range being
considered, if it doesn't match the resource type we're looking for.

Reported-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
CC: stable@vger.kernel.org # v3.12+
drivers/pci/host/pci-mvebu.c