|
@@ -523,7 +523,7 @@ static __cpuinit int threshold_create_bank(unsigned int cpu, unsigned int bank)
|
|
|
{
|
|
|
int i, err = 0;
|
|
|
struct threshold_bank *b = NULL;
|
|
|
- struct device *dev = mce_device[cpu];
|
|
|
+ struct device *dev = per_cpu(mce_device, cpu);
|
|
|
char name[32];
|
|
|
|
|
|
sprintf(name, "threshold_bank%i", bank);
|
|
@@ -585,7 +585,7 @@ static __cpuinit int threshold_create_bank(unsigned int cpu, unsigned int bank)
|
|
|
if (i == cpu)
|
|
|
continue;
|
|
|
|
|
|
- dev = mce_device[i];
|
|
|
+ dev = per_cpu(mce_device, i);
|
|
|
if (dev)
|
|
|
err = sysfs_create_link(&dev->kobj,b->kobj, name);
|
|
|
if (err)
|
|
@@ -665,7 +665,8 @@ static void threshold_remove_bank(unsigned int cpu, int bank)
|
|
|
#ifdef CONFIG_SMP
|
|
|
/* sibling symlink */
|
|
|
if (shared_bank[bank] && b->blocks->cpu != cpu) {
|
|
|
- sysfs_remove_link(&mce_device[cpu]->kobj, name);
|
|
|
+ dev = per_cpu(mce_device, cpu);
|
|
|
+ sysfs_remove_link(&dev->kobj, name);
|
|
|
per_cpu(threshold_banks, cpu)[bank] = NULL;
|
|
|
|
|
|
return;
|
|
@@ -677,7 +678,7 @@ static void threshold_remove_bank(unsigned int cpu, int bank)
|
|
|
if (i == cpu)
|
|
|
continue;
|
|
|
|
|
|
- dev = mce_device[i];
|
|
|
+ dev = per_cpu(mce_device, i);
|
|
|
if (dev)
|
|
|
sysfs_remove_link(&dev->kobj, name);
|
|
|
per_cpu(threshold_banks, i)[bank] = NULL;
|