GIT: unionfs2-2.6.27.y: hwmon: (coretemp) Properly label the sensors

Erez Zadok ezk at fsl.cs.sunysb.edu
Thu Aug 12 23:15:33 EDT 2010


commit dccb2a9a147dbb973bca41ed67bdddf3676c77f6
Author: Jean Delvare <khali at linux-fr.org>
Date:   Fri Jul 9 16:22:51 2010 +0200

    hwmon: (coretemp) Properly label the sensors
    
    commit 3f4f09b4be35d38d6e2bf22c989443e65e70fc4c upstream.
    
    Don't assume that CPU entry number and core ID always match. It
    worked in the simple cases (single CPU, no HT) but fails on
    multi-CPU systems.
    
    Signed-off-by: Jean Delvare <khali at linux-fr.org>
    Acked-by: Huaxu Wan <huaxu.wan at intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh at suse.de>

diff --git a/drivers/hwmon/coretemp.c b/drivers/hwmon/coretemp.c
index 2b8f439..d73d0ba 100644
--- a/drivers/hwmon/coretemp.c
+++ b/drivers/hwmon/coretemp.c
@@ -52,6 +52,7 @@ struct coretemp_data {
 	struct mutex update_lock;
 	const char *name;
 	u32 id;
+	u16 core_id;
 	char valid;		/* zero until following fields are valid */
 	unsigned long last_updated;	/* in jiffies */
 	int temp;
@@ -74,7 +75,7 @@ static ssize_t show_name(struct device *dev, struct device_attribute
 	if (attr->index == SHOW_NAME)
 		ret = sprintf(buf, "%s\n", data->name);
 	else	/* show label */
-		ret = sprintf(buf, "Core %d\n", data->id);
+		ret = sprintf(buf, "Core %d\n", data->core_id);
 	return ret;
 }
 
@@ -216,6 +217,9 @@ static int __devinit coretemp_probe(struct platform_device *pdev)
 	}
 
 	data->id = pdev->id;
+#ifdef CONFIG_SMP
+	data->core_id = c->cpu_core_id;
+#endif
 	data->name = "coretemp";
 	mutex_init(&data->update_lock);
 


More information about the unionfs-cvs mailing list