- 论坛徽章:
- 0
|
各位前辈:
我移植一个LINUX模块,所有文件都已经编译通过,模块.o文件(l2_module.o)也已经生成,对应的l2_module.mod.c文件也已经生成,可是编译l2_module.mod.c时提示错误:
"../linux/obj/l2/l2_module.mod.c:9: error: 'l2_module' undeclared here (not in a function)"
事实上,l2_module是通过KBUILD_MODNAME传入的,不明白为什么出现这个错误,请教各位前辈了。
对应的l2_module.mod.c文件:
#include <linux/module.h>
#include <linux/vermagic.h>
#include <linux/compiler.h>
MODULE_INFO(vermagic, VERMAGIC_STRING);
struct module __this_module
__attribute__((section(".gnu.linkonce.this_module"))) = {
.name = KBUILD_MODNAME,
.init = init_module,
#ifdef CONFIG_MODULE_UNLOAD
.exit = cleanup_module,
#endif
};
static const struct modversion_info ____versions[]
__attribute_used__
__attribute__((section("__versions"))) = {
{ 0x7ffc5820, "struct_module" },
{ 0x12da5bb2, "__kmalloc" },
{ 0xb922ecbc, "__mod_timer" },
{ 0x2af4cb29, "sock_init_data" },
{ 0xd6875fa3, "_write_unlock_bh" },
{ 0x5e48a6d1, "del_timer" },
{ 0x722a0a0a, "_read_lock" },
{ 0x8dc5e118, "sock_no_setsockopt" },
{ 0x9a99fc20, "sock_no_getsockopt" },
{ 0x66a36594, "sock_no_ioctl" },
{ 0x458a03ff, "malloc_sizes" },
{ 0xc7a4fbed, "rtnl_lock" },
{ 0x5eeee4c4, "netif_carrier_on" },
{ 0xb83dde4, "skb_clone" },
{ 0x7953bdc2, "dev_get_by_name" },
{ 0x6583bf36, "skb_copy" },
{ 0xc8be7b15, "_spin_lock" },
{ 0x63ecad53, "register_netdevice_notifier" },
{ 0x5b86547f, "netif_carrier_off" },
{ 0x9d36864a, "sock_no_getname" },
{ 0x17d2911c, "skb_recv_datagram" },
{ 0xa8c9d7ea, "alloc_netdev" },
{ 0x464aa32a, "sock_rfree" },
{ 0x35f8d8de, "skb_realloc_headroom" },
{ 0x11545039, "sock_no_poll" },
{ 0x7d11c268, "jiffies" },
{ 0xfe769456, "unregister_netdevice_notifier" },
{ 0xda4008e6, "cond_resched" },
{ 0x5b9eab8e, "netif_rx" },
{ 0xa5755732, "sock_no_sendpage" },
{ 0x400c284b, "sock_no_mmap" },
{ 0xba9ad81b, "sock_no_recvmsg" },
{ 0xb4e5f0ea, "skb_queue_purge" },
{ 0xc17ba98, "sock_no_socketpair" },
{ 0x2462292, "_read_lock_bh" },
{ 0x816c97ca, "sk_alloc" },
{ 0x7d278df7, "_write_lock_bh" },
{ 0x1b7d4074, "printk" },
{ 0x95ae492f, "sock_no_bind" },
{ 0x2f287f0d, "copy_to_user" },
{ 0xc626b716, "register_netdev" },
{ 0x67bd52cb, "sock_no_listen" },
{ 0x22e75b4f, "dev_close" },
{ 0x6fac72e7, "sock_no_accept" },
{ 0xfdd5d2bb, "sk_free" },
{ 0xd7e0e786, "dev_get_by_index" },
{ 0x4d3042e9, "dev_remove_pack" },
{ 0x69a2a04d, "sock_no_shutdown" },
{ 0x5b2970de, "dev_open" },
{ 0xc7336d69, "skb_over_panic" },
{ 0x7410d76c, "module_put" },
{ 0x7dceceac, "capable" },
{ 0xafff6103, "_write_lock" },
{ 0x426ae467, "kmem_cache_alloc" },
{ 0xfef9d632, "datagram_poll" },
{ 0xc66171a8, "sock_register" },
{ 0x29ae58fb, "kfree_skb" },
{ 0x6b2dc060, "dump_stack" },
{ 0x9ed3694c, "skb_under_panic" },
{ 0x3f29d6db, "eth_type_trans" },
{ 0x32b3223d, "sock_alloc_send_skb" },
{ 0xf39bf4d9, "put_cmsg" },
{ 0x88640159, "_read_unlock_bh" },
{ 0xb5a97f8c, "ether_setup" },
{ 0x3c37be44, "skb_copy_datagram_iovec" },
{ 0x278471c4, "netdev_state_change" },
{ 0x3b41aa7d, "init_timer" },
{ 0x7233ab9c, "sock_no_connect" },
{ 0x72270e35, "do_gettimeofday" },
{ 0xc8fdea38, "dev_set_promiscuity" },
{ 0x37a0cba, "kfree" },
{ 0x11707abb, "dev_alloc_name" },
{ 0x62737e1d, "sock_unregister" },
{ 0xe5f2c1ac, "sock_no_sendmsg" },
{ 0x9fb3dd30, "memcpy_fromiovec" },
{ 0x60a4461c, "__up_wakeup" },
{ 0x9dbc23fd, "unregister_netdev" },
{ 0xcb3e5327, "br_handle_frame_hook" },
{ 0x25da070, "snprintf" },
{ 0x3428ab33, "dev_add_pack" },
{ 0x387c78a5, "dev_ioctl" },
{ 0x8235805b, "memmove" },
{ 0x96b27088, "__down_failed" },
{ 0xfca65f21, "dev_queue_xmit" },
{ 0xd6c963c, "copy_from_user" },
{ 0xd38ae327, "eth_header" },
{ 0x6e720ff2, "rtnl_unlock" },
{ 0x33adf320, "skb_free_datagram" },
};
static const char __module_depends[]
__attribute_used__
__attribute__((section(".modinfo"))) =
"depends=";
|
|