mirror of https://gitee.com/openkylin/linux.git
[PATCH] clockevents: remove bad designed sysfs support for now
The current sysfs support of clockevents does not obey the "only one value per file" rule. The real fix is not 2.6.21 material. Therefor remove the sysfs support for now. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Ingo Molnar <mingo@elte.hu> Acked-by: Greg Kroah-Hartman <gregkh@suse.de> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
e0f2e3a06b
commit
291bc047e1
|
@ -274,72 +274,3 @@ void clockevents_notify(unsigned long reason, void *arg)
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(clockevents_notify);
|
||||
|
||||
#ifdef CONFIG_SYSFS
|
||||
|
||||
/**
|
||||
* clockevents_show_registered - sysfs interface for listing clockevents
|
||||
* @dev: unused
|
||||
* @buf: char buffer to be filled with clock events list
|
||||
*
|
||||
* Provides sysfs interface for listing registered clock event devices
|
||||
*/
|
||||
static ssize_t clockevents_show_registered(struct sys_device *dev, char *buf)
|
||||
{
|
||||
struct list_head *tmp;
|
||||
char *p = buf;
|
||||
int cpu;
|
||||
|
||||
spin_lock(&clockevents_lock);
|
||||
|
||||
list_for_each(tmp, &clockevent_devices) {
|
||||
struct clock_event_device *ce;
|
||||
|
||||
ce = list_entry(tmp, struct clock_event_device, list);
|
||||
p += sprintf(p, "%-20s F:%04x M:%d", ce->name,
|
||||
ce->features, ce->mode);
|
||||
p += sprintf(p, " C:");
|
||||
if (!cpus_equal(ce->cpumask, cpu_possible_map)) {
|
||||
for_each_cpu_mask(cpu, ce->cpumask)
|
||||
p += sprintf(p, " %d", cpu);
|
||||
} else {
|
||||
/*
|
||||
* FIXME: Add the cpu which is handling this sucker
|
||||
*/
|
||||
}
|
||||
p += sprintf(p, "\n");
|
||||
}
|
||||
|
||||
spin_unlock(&clockevents_lock);
|
||||
|
||||
return p - buf;
|
||||
}
|
||||
|
||||
/*
|
||||
* Sysfs setup bits:
|
||||
*/
|
||||
static SYSDEV_ATTR(registered, 0600,
|
||||
clockevents_show_registered, NULL);
|
||||
|
||||
static struct sysdev_class clockevents_sysclass = {
|
||||
set_kset_name("clockevents"),
|
||||
};
|
||||
|
||||
static struct sys_device clockevents_sys_device = {
|
||||
.id = 0,
|
||||
.cls = &clockevents_sysclass,
|
||||
};
|
||||
|
||||
static int __init clockevents_sysfs_init(void)
|
||||
{
|
||||
int error = sysdev_class_register(&clockevents_sysclass);
|
||||
|
||||
if (!error)
|
||||
error = sysdev_register(&clockevents_sys_device);
|
||||
if (!error)
|
||||
error = sysdev_create_file(
|
||||
&clockevents_sys_device,
|
||||
&attr_registered);
|
||||
return error;
|
||||
}
|
||||
device_initcall(clockevents_sysfs_init);
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue