免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4380 | 回复: 3
打印 上一主题 下一主题

[内核模块] linux 模块crc [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2018-06-25 10:30 |只看该作者 |倒序浏览
阅读2.6代码时候,有个疑问,
在函数resolve_symbol->check_version函数中crc参数获值的问题,我追踪代码,怎么看到得到的是__crc_##sym的地址,而不是它本身的crc值呢?



#define __CRC_SYMBOL(sym, sec)                  \   
    extern void *__crc_##sym __attribute__((weak));     \  
    static const unsigned long __kcrctab_##sym      \  
    __used                          \  
    __attribute__((section("__kcrctab" sec), unused))   \  
    = (unsigned long) &__crc_##sym;  

论坛徽章:
0
2 [报告]
发表于 2018-06-25 15:02 |只看该作者
帮你顶上去等待大佬回复

论坛徽章:
0
3 [报告]
发表于 2018-06-25 16:50 |只看该作者
http://bbs.chinaunix.net/thread-4186531-1-1.html
这里有一些信息,只是在看源码时体现的是获得值是地址值,而不是crc值。

论坛徽章:
0
4 [报告]
发表于 2018-07-03 11:24 |只看该作者
其实在ld链接文件中,已用crc值作为一个abs地址。解决。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP