Writing framework in kernel

Tomek The Messenger tomekthemessenger at gmail.com
Sun Mar 22 12:08:15 EDT 2020


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)
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:
https://elixir.bootlin.com/linux/latest/source/drivers/reset/core.c
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???
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20200322/fc3baf0f/attachment.html>


More information about the Kernelnewbies mailing list