免费注册 查看新帖 |

Chinaunix

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

[内核模块] 内核模块读取文件返回-14错误 [复制链接]

求职 : c/c++研发
论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-06-18 16:26 |显示全部楼层 |倒序浏览
大虾们,小弟遇到一个痛心疾首的问题,请赐教~

在内核中静态编译,调用vfs_read读取文件内容(buf为内核空间) 成功,核心代码如下:

mm_segment_t old_fs;
set_fs(get_ds());
vfs_read(filp,buf,size,pos);
set_fs(old_fs);

小弟对上述代码封装成了 read_file函数。

read_file在模块中,现出现了两种情况(此模块通过 lsm 方式挂载到内核)
1、同模块内,读取文件成功;
2、其他模块调用read_file一直返回-14 (bad address)

请大虾赐教~~~

jiay_os@sari.ac.cn

求职 : c/c++研发
论坛徽章:
0
2 [报告]
发表于 2015-06-18 18:47 |显示全部楼层
本帖最后由 jeick2008 于 2015-06-19 11:00 编辑

问题已解决,内核函数栈空间过大(局部变量占24k左右),导致程序跑飞。。。。。。。。。。直接泪崩了。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP