Bedeutung der Versionsinformationen in der Datei .mod.c im Linux-Kernel
In allen ladbaren Kernelmodulen, wennmake
gegeben ist, erzeugt es eine Datei mit dem Namenmodulename.mod.c
zusätzlich zumodulename.ko
.
Der folgende Code-Auszug stammt von a.mod.c
Datei, die a enthält{number, function}
Paar. Welche Bedeutung hat diese Zahl? Wie wird diese Nummer vom Compiler generiert?
static const struct modversion_info ____versions[]
__used
__attribute__((section("__versions"))) = {
{ 0xa6d8dcb5, "module_layout" },
{ 0x16c2b958, "register_netdevice" },
{ 0x609f1c7e, "synchronize_net" },
{ 0x90a60c63, "kmem_cache_destroy" },
{ 0x402b8281, "__request_module" },
{ 0x844a8af7, "netdev_info" },
{ 0xdfdb0ee8, "kmalloc_caches" },
{ 0x12da5bb2, "__kmalloc" },
{ 0x92d42843, "cfg80211_cqm_rssi_notify" },
{ 0xc86289e8, "perf_tp_event" },
...
...
}