> + > +static struct notifier_block __cpuinitdata cpuid_sysfs_cpu_notifier = { > + .notifier_call = cpuid_sysfs_cpu_callback, > +}; Data is annotated _cpuintidata
but > + Data is annotated _cpuintidata > @@ -217,11 +445,14 @@ static void __exit cpuid_exit(void) > { > int cpu = 0; > > - for_each_online_cpu(cpu) > + for_each_online_cpu(cpu) { > cpuid_device_destroy(cpu); > + remove_cpuid_sysfs(cpu); > + } > class_destroy(cpuid_class); > unregister_chrdev(CPUID_MAJOR, "cpu/cpuid"); > unregister_hotcpu_notifier(&cpuid_class_cpu_notifier); > + unregister_hotcpu_notifier(&cpuid_sysfs_cpu_notifier); used in an __exit function. You should have seen a Section mismatch warning for this. The right fix is to annotate the cpuid_sysfs_cpu_notifier with __initdata_refok (soon to be named __refdata) Or even better to declare it const and use _refconst. Sam -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/