diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2010-01-21 18:07:59 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2010-03-07 20:04:49 -0500 |
commit | 6c1733aca0b48db4d0e660d54976a1cca25b5eaf (patch) | |
tree | 8fbc86bb7c8058643a6cdbe865e7d66ad6d8ac5e /drivers/base/cpu.c | |
parent | c607cf0c20903f22919c187d1db4f3256c58f0c5 (diff) |
sysdev: fix up the probe/release attributes
These should be sysdev attributes, not class attributes. This patch
should resolve the problem.
Thanks to Stephen Rothwell for pointing out the problem.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Andi Kleen <andi@firstfloor.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/base/cpu.c')
-rw-r--r-- | drivers/base/cpu.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/base/cpu.c b/drivers/base/cpu.c index 9121c77b77fa..7036e8e96ab8 100644 --- a/drivers/base/cpu.c +++ b/drivers/base/cpu.c | |||
@@ -79,24 +79,24 @@ void unregister_cpu(struct cpu *cpu) | |||
79 | } | 79 | } |
80 | 80 | ||
81 | #ifdef CONFIG_ARCH_CPU_PROBE_RELEASE | 81 | #ifdef CONFIG_ARCH_CPU_PROBE_RELEASE |
82 | static ssize_t cpu_probe_store(struct class *class, | 82 | static ssize_t cpu_probe_store(struct sys_device *dev, |
83 | struct class_attribute *attr, | 83 | struct sysdev_attribute *attr, |
84 | const char *buf, | 84 | const char *buf, |
85 | size_t count) | 85 | size_t count) |
86 | { | 86 | { |
87 | return arch_cpu_probe(buf, count); | 87 | return arch_cpu_probe(buf, count); |
88 | } | 88 | } |
89 | 89 | ||
90 | static ssize_t cpu_release_store(struct class *class, | 90 | static ssize_t cpu_release_store(struct sys_device *dev, |
91 | struct class_attribute *attr, | 91 | struct sysdev_attribute *attr, |
92 | const char *buf, | 92 | const char *buf, |
93 | size_t count) | 93 | size_t count) |
94 | { | 94 | { |
95 | return arch_cpu_release(buf, count); | 95 | return arch_cpu_release(buf, count); |
96 | } | 96 | } |
97 | 97 | ||
98 | static CLASS_ATTR(probe, S_IWUSR, NULL, cpu_probe_store); | 98 | static SYSDEV_ATTR(probe, S_IWUSR, NULL, cpu_probe_store); |
99 | static CLASS_ATTR(release, S_IWUSR, NULL, cpu_release_store); | 99 | static SYSDEV_ATTR(release, S_IWUSR, NULL, cpu_release_store); |
100 | #endif /* CONFIG_ARCH_CPU_PROBE_RELEASE */ | 100 | #endif /* CONFIG_ARCH_CPU_PROBE_RELEASE */ |
101 | 101 | ||
102 | #else /* ... !CONFIG_HOTPLUG_CPU */ | 102 | #else /* ... !CONFIG_HOTPLUG_CPU */ |
@@ -261,8 +261,8 @@ int __init cpu_dev_init(void) | |||
261 | 261 | ||
262 | static struct sysdev_class_attribute *cpu_sysdev_class_attrs[] = { | 262 | static struct sysdev_class_attribute *cpu_sysdev_class_attrs[] = { |
263 | #ifdef CONFIG_ARCH_CPU_PROBE_RELEASE | 263 | #ifdef CONFIG_ARCH_CPU_PROBE_RELEASE |
264 | &class_attr_probe.attr, | 264 | &attr_probe, |
265 | &class_attr_release.attr, | 265 | &attr_release, |
266 | #endif | 266 | #endif |
267 | &cpu_attrs[0].attr, | 267 | &cpu_attrs[0].attr, |
268 | &cpu_attrs[1].attr, | 268 | &cpu_attrs[1].attr, |