x86: call cache_add_dev() from cache_sysfs_init() explicitly
authorSatyam Sharma <satyam@infradead.org>
Wed, 17 Oct 2007 16:04:40 +0000 (18:04 +0200)
committerThomas Gleixner <tglx@inhelltoy.tec.linutronix.de>
Wed, 17 Oct 2007 18:16:49 +0000 (20:16 +0200)
Call cache_add_dev() from cache_sysfs_init() explicitly, instead of
referencing the CPU notifier callback directly from generic startup
code. Looks cleaner (to me at least) this way, and also makes it
possible to use other tricks to replace __cpuinit{data} annotations, as
recently discussed on this list.

Signed-off-by: Satyam Sharma <satyam@infradead.org>
Cc: Andi Kleen <ak@suse.de>
Cc: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
arch/x86/kernel/cpu/intel_cacheinfo.c

index 6f9dd38..1826395 100644 (file)
@@ -794,8 +794,9 @@ static int __cpuinit cache_sysfs_init(void)
        register_hotcpu_notifier(&cacheinfo_cpu_notifier);
 
        for_each_online_cpu(i) {
-               cacheinfo_cpu_callback(&cacheinfo_cpu_notifier, CPU_ONLINE,
-                       (void *)(long)i);
+               struct sys_device *sys_dev = get_cpu_sysdev((unsigned int)i);
+
+               cache_add_dev(sys_dev);
        }
 
        return 0;