ruger 发表于 2007-3-19 18:26:44

错误:提领指向不完全类型的指针

我的一个内核模块程序,是仿照别人的例子做的,但是别人的程序没问题,我的却——错误:提领指向不完全类型的指针,实际上这是一个网络模块,ruger_cluster_list实际上是一个结构体指针,初始化的时候会和自己组成循环链表,以后有插入元素的操作。
谁遇到过这种问题?在网上看了一下,基本上都是落了某个头文件,但是我确认过没有落。
大家伙有没有 同样的情况啊指导一下啊?我是用代理上的公社,不容易啊!
struct ruger_cluser {



struct ruger_cluster *next;
};
static struct ruger_cluster *ruger_cluster_list;
static void __exitruger_exit(void)
{
struct list_head *ptr;
structruger_element *entry;

for(ptr = ruger_table.next; ptr != &ruger_table; ptr = ptr->next) {
    entry = list_entry(ptr, struct ruger_element, list);
    kfree(entry);
}

while(ruger_cluster_list != NULL) {
        struct ruger_cluster *next = ruger_cluster_list->next;//错误:提领指向不完全类型的指针,就是这一句,这种用法应该没问题,也不是缺少头文件的问题
        kfree(ruger_cluster_list);
        ruger_cluster_list = next;
}

set_skb_ruger_handler(NULL);
set_buffer_ruger_handler(NULL);
sock_unregister(PF_RUGER);
}

static int __initruger_init(void)
{

INIT_LIST_HEAD(&ruger_table);
ruger_cluster_list = NULL;
sock_register(&ruger_family_ops);
return 0;
}

module_init(ruger_init);
module_exit(ruger_exit);
MODULE_LICENSE("GPL");
MODULE_ALIAS_NETPROTO(PF_RUGER);
页: [1]
查看完整版本: 错误:提领指向不完全类型的指针