+ -
当前位置:首页 → 问答吧 → 模块编译问题(悬赏,解决之后站内信联系)

模块编译问题(悬赏,解决之后站内信联系)

时间:2010-12-16

来源:互联网

我自己写了一个usb modem驱动模块(注册一个usb_serial),如果我在init函数中添加'一个printk打印信息,在2.6.21内核编译时候就会报如下错误:
MODPOST vmlinux
WARNING: vmlinux: 'kfree' exported twice.Previous export was in vmlinux
/bin/sh: line1:29822 Segmentation fault
  1. static int _init modem_usb_int(void)
  2. {
  3.         .....
  4. printk("Enter..\n");\\debug,happens issue
  5. ......
  6. return 0;
  7. }
  8. static void __exit modem_usb_exit(void)
  9. {
  10. ............
  11. }
  12. module_init(modem_usb_init);
  13. module_exit(modem_usb_exit);
  14. module_param(vid,uint,S_IRUGO|S_IWUSR);
  15. MODULE_PARM_DESC(vid,"Vendor id");
复制代码
但是在2.6.26内核编译同样的代码,就没有任何问题,Driver也能注册正常工作。

大家有人知道这个问题么?帮忙解决一下,太奇怪了

作者: ruoyisiyu   发布时间: 2010-12-16

本帖最后由 ruoyisiyu 于 2010-12-16 14:33 编辑

另外,头文件以及codes中并没有主动export kfree.,不加printk打印信息就没有问题,而且在本模块其他函数添加打印信息也没有问题。

作者: ruoyisiyu   发布时间: 2010-12-16

没人遇到过?

作者: ruoyisiyu   发布时间: 2010-12-16

大哥们帮帮忙,不要老让我自己盖楼

作者: ruoyisiyu   发布时间: 2010-12-16