diff options
author | Bjorn Helgaas <bhelgaas@google.com> | 2014-04-29 18:51:55 (GMT) |
---|---|---|
committer | Bjorn Helgaas <bhelgaas@google.com> | 2014-04-29 23:36:44 (GMT) |
commit | 1e358f94c00570f88a590cabe718daf835440cc9 (patch) | |
tree | 3ac5fcf7100d63dc4aad0e8ba6392353f56c5458 /drivers/pci/probe.c | |
parent | efdd4070f38e962d69c11f23c5aa033121a8cf0f (diff) | |
download | linux-1e358f94c00570f88a590cabe718daf835440cc9.tar.xz |
PCI: Fix use of uninitialized MPS value
If "pcie_bus_config == PCIE_BUS_PERFORMANCE", we don't initialize "smpss",
so we pass a pointer to garbage into pcie_bus_configure_set(), where we
compute "mps" based on the garbage. We then pass the garbage "mps" to
pcie_write_mps(), which ignores it in the PCIE_BUS_PERFORMANCE case.
Coverity isn't smart enough to deduce that we ignore the garbage (it's a
lot to expect from a human, too), so initialize "smpss" to a safe value in
all cases.
Found by Coverity (CID 146454).
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/probe.c')
-rw-r--r-- | drivers/pci/probe.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/probe.c b/drivers/pci/probe.c index fe89a98..490031f 100644 --- a/drivers/pci/probe.c +++ b/drivers/pci/probe.c @@ -1617,7 +1617,7 @@ static int pcie_bus_configure_set(struct pci_dev *dev, void *data) */ void pcie_bus_configure_settings(struct pci_bus *bus) { - u8 smpss; + u8 smpss = 0; if (!bus->self) return; |