Hi
I am writing some framework for my kernel drivers. I delegated to framework the code which is common amongs all kernel drivers. So my framework module core.c has none probe, remove functions. It has also none module_init, module_exit functions at those are not needed.
1.) When I do modprobe of my core.ko I got error:
15.092976] testframework_core: module license 'unspecified' taints kernel.
[ 15.129532]
testframework_core
: Unknown symbol regmap_write (err 0)
[ 15.129554] testframework_core : Unknown symbol devm_kmalloc (err 0)
[ 15.129573] rstctl_core testframework_core : Unknown symbol of_property_read_variable_u32_array (err 0)
[ 15.129598] testframework_core : Unknown symbol sysfs_remove_groups (err 0)
[ 15.129554] testframework_core : Unknown symbol devm_kmalloc (err 0)
[ 15.129573] rstctl_core testframework_core : Unknown symbol of_property_read_variable_u32_array (err 0)
[ 15.129598] testframework_core : Unknown symbol sysfs_remove_groups (err 0)
etc
So I suppose I need to put in my core.c line:
MODULE_LICENSE("GPL v2");
at the end of file in order to get rid of above problems. I will check if it helps.
However when I am looking at build-in frameworks in linux kernel nobody put line:
MODULE_LICENSE("GPL v2");
So why I have to and for example here:
there is none such line and everything works?
This is what I completely don't understand. My framework is external module, maybe this is the reason???
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies