免费注册 查看新帖 |

Chinaunix

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

跪求高手帮忙,关于do_mmap [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-03-30 11:57 |只看该作者 |倒序浏览
最近在进行模块编程时遇到了个问题,希望有人帮我解答下。
这个问题是关于do_mmap后,赋予一个全局变量的指针ad。
这个do_mmap操作是init_module里做的,而在init_module里ad的值是正常的,也能读到指针所指向的内容。
当触发钩子函数后pack_in,调用全局变量ad,地址是对的,但是指针所指向的内容是错误的,不能读写。
有什么解决办法没?

struct file *fp;
ALL_DATA * ad;
int init_module()
{

nf_in.hook      = pack_in;
nf_in.hooknum   = NF_INET_LOCAL_IN;
nf_in.pf                = PF_INET;
nf_in.priority      = NF_IP_PRI_FIRST;
   
nf_register_hook(&nf_in);      
  
     fp = filp_open("/etc/ABC.dat",O_RDWR ,S_IRWXU);
    ad=(ALL_DATA*)do_mmap(fp,0,sizeof(ALL_DATA),PROT_READ | PROT_WRITE,MAP_SHARED,0);
  filp_close(fp,NULL);
return 0;
}

论坛徽章:
0
2 [报告]
发表于 2010-03-30 12:29 |只看该作者
文件不是已经关闭了吗

论坛徽章:
0
3 [报告]
发表于 2010-03-30 12:44 |只看该作者
与关闭不关闭应该无关

关闭的情况下 我依然可以读到里面的内容 在init_module下
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP