Hi, I am facing the following error when i am building the kernel. ERROR: modpost: Found 2 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' To build the kernel despite the mismatches, build with: 'make CONFIG_NO_ERROR_ON_MISMATCH=y' (NOTE: This is not recommended) make[3]: *** [__modpost] Error 1 make[2]: *** [modules] Error 2 make[1]: *** [sub-make] Error 2 After i did make the kernel using make CONFIG_DEBUG_SECTION_MISMATCH=y it said *section mismatch .* I am trying to write a platform driver (not sure if my code is right ) #include<linux/spinlock.h> #include <linux/module.h> /* Needed by all modules */ #include <linux/kernel.h> #include <asm/io.h> /* Needed for KERN_INFO */ #include <linux/platform_device.h> MODULE_LICENSE ("GPL"); static int __devinit my_module_probe(struct platform_device *pdev){ printk(KERN_INFO "Probe\n"); return 0; } static int __devexit my_module_remove (struct platform_device *pdev) { printk(KERN_INFO "Goodbye world 1.\n"); return 0; } static struct of_device_id spinlock_match[] = { {.compatible = "spinlockcrash"}, {} }; static struct platform_driver spinlock_platformdev = { .probe = my_module_probe, .remove = __devexit_p(my_module_remove), .driver = { .name = "spinlock_platformdev", .owner = THIS_MODULE, .of_match_table = spinlock_match, }, }; static int __init mymodule_init(void) { printk(KERN_INFO "INIT"); platform_driver_register(&spinlock_platformdev); return 0; } static void __exit mymodule_exit(void) { printk(KERN_INFO "GOOD BYE"); platform_driver_unregister(&spinlock_platformdev); } module_init(mymodule_init); module_exit(mymodule_exit); Can anybody throw some light on what might be happening here ? Thanks and regards, Vignesh -- http://vigneshradhakrishnan.blogspot.com/
try removing __devinit and __devexit from probe and remove. This is not needed as it is module. On Tue, Jul 30, 2013 at 4:36 PM, Vignesh Radhakrishnan < vignesh1192@gmail.com> wrote:
Hi,
I am facing the following error when i am building the kernel.
ERROR: modpost: Found 2 section mismatch(es). To see full details build your kernel with: 'make CONFIG_DEBUG_SECTION_MISMATCH=y' To build the kernel despite the mismatches, build with: 'make CONFIG_NO_ERROR_ON_MISMATCH=y' (NOTE: This is not recommended) make[3]: *** [__modpost] Error 1 make[2]: *** [modules] Error 2 make[1]: *** [sub-make] Error 2
After i did make the kernel using make CONFIG_DEBUG_SECTION_MISMATCH=y it said *section mismatch .*
I am trying to write a platform driver (not sure if my code is right )
#include<linux/spinlock.h> #include <linux/module.h> /* Needed by all modules */ #include <linux/kernel.h> #include <asm/io.h> /* Needed for KERN_INFO */ #include <linux/platform_device.h> MODULE_LICENSE ("GPL");
static int __devinit my_module_probe(struct platform_device *pdev){
printk(KERN_INFO "Probe\n");
return 0;
} static int __devexit my_module_remove (struct platform_device *pdev) {
printk(KERN_INFO "Goodbye world 1.\n"); return 0;
} static struct of_device_id spinlock_match[] = { {.compatible = "spinlockcrash"}, {} };
static struct platform_driver spinlock_platformdev = { .probe = my_module_probe, .remove = __devexit_p(my_module_remove), .driver = { .name = "spinlock_platformdev", .owner = THIS_MODULE, .of_match_table = spinlock_match, }, };
static int __init mymodule_init(void) { printk(KERN_INFO "INIT");
platform_driver_register(&spinlock_platformdev); return 0; } static void __exit mymodule_exit(void) { printk(KERN_INFO "GOOD BYE"); platform_driver_unregister(&spinlock_platformdev); }
module_init(mymodule_init); module_exit(mymodule_exit);
Can anybody throw some light on what might be happening here ?
Thanks and regards, Vignesh -- http://vigneshradhakrishnan.blogspot.com/
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
participants (2)
-
Rahul Bedarkar -
Vignesh Radhakrishnan