[Oneiric SRU PATCH 4/4] hwmon: (fam15h_power) Fix pci_device_id array

Tim Gardner tim.gardner at canonical.com
Thu Jun 14 14:42:59 UTC 2012


From: Guenter Roeck <guenter.roeck at ericsson.com>

BugLink: http://bugs.launchpad.net/bugs/1009086

pci_match_id() takes an *array* of IDs which must be properly zero-
terminated.

Reported-by: Ben Hutchings <ben at decadent.org.uk>
Cc: stable at vger.kernel.org # 3.0+: 00250ec hwmon: fam15h_power: fix bogus values
Cc: stable at vger.kernel.org # 3.0+
Signed-off-by: Guenter Roeck <guenter.roeck at ericsson.com>
Acked-by: Jean Delvare <khali at linux-fr.org>
(cherry picked from commit c3e40a9972428d6e2d8e287ed0233a57a218c30f)

Signed-off-by: Tim Gardner <tim.gardner at canonical.com>
---
 drivers/hwmon/fam15h_power.c |    9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/drivers/hwmon/fam15h_power.c b/drivers/hwmon/fam15h_power.c
index 37a8fc9..e8e18ca 100644
--- a/drivers/hwmon/fam15h_power.c
+++ b/drivers/hwmon/fam15h_power.c
@@ -128,17 +128,20 @@ static bool __devinit fam15h_power_is_internal_node0(struct pci_dev *f4)
  * counter saturations resulting in bogus power readings.
  * We correct this value ourselves to cope with older BIOSes.
  */
+static DEFINE_PCI_DEVICE_TABLE(affected_device) = {
+	{ PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_NB_F4) },
+	{ 0 }
+};
+
 static void __devinit tweak_runavg_range(struct pci_dev *pdev)
 {
 	u32 val;
-	const struct pci_device_id affected_device = {
-		PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_15H_NB_F4) };
 
 	/*
 	 * let this quirk apply only to the current version of the
 	 * northbridge, since future versions may change the behavior
 	 */
-	if (!pci_match_id(&affected_device, pdev))
+	if (!pci_match_id(affected_device, pdev))
 		return;
 
 	pci_bus_read_config_dword(pdev->bus,
-- 
1.7.9.5





More information about the kernel-team mailing list