免费注册 查看新帖 |

Chinaunix

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

[文件系统] linux bio中的vio_vec下的多个bv_page指向同一个page [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-06-04 16:43 |只看该作者 |倒序浏览
我们在系统的generic_make_request中的将BIO的bv_page打出来,发现同一个BIO中多个bio_vec下的bv_page地址相同,什么情况下系统会创建这样的BIO?

论坛徽章:
0
2 [报告]
发表于 2013-06-05 15:27 |只看该作者
自己顶起~!~!

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
3 [报告]
发表于 2013-06-05 16:13 |只看该作者
这些 bio 应该是指向同一个 Page 内的不同部分
应该还有字段表示 offset 和 len,它们的值应该是不同的

论坛徽章:
0
4 [报告]
发表于 2013-06-05 16:39 |只看该作者
打印出来了,都是 len:4096 offset:0

论坛徽章:
1
天蝎座
日期:2013-10-23 21:11:03
5 [报告]
发表于 2013-06-05 17:15 |只看该作者
不知道 merge 操作是在此之前还是之后发生?
另外,你的机器上跑什么样的应用?

论坛徽章:
0
6 [报告]
发表于 2013-06-05 17:21 |只看该作者
应用是KVM加速windows桌面。merge操作指的是bio的合并还是?

论坛徽章:
0
7 [报告]
发表于 2013-06-06 13:49 |只看该作者
自己顶起来~!

论坛徽章:
0
8 [报告]
发表于 2013-06-06 16:40 |只看该作者
         cnt:0 addr:ffffea0018b48ee0 offset:0 len:4096
         cnt:1 addr:ffffea0018b48f18 offset:0 len:4096
         cnt:2 addr:ffffea0018b48f50 offset:0 len:4096
         cnt:3 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:4 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:5 addr:ffffea0018b48188 offset:0 len:4096
         cnt:6 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:7 addr:ffffea0018b481c0 offset:0 len:4096
         cnt:8 addr:ffffea0018b481f8 offset:0 len:4096
         cnt:9 addr:ffffea0018b48230 offset:0 len:4096
         cnt:10 addr:ffffea0018b48268 offset:0 len:4096
         cnt:11 addr:ffffea0018b482a0 offset:0 len:4096
         cnt:12 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:13 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:14 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:15 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:16 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:17 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:18 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:19 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:20 addr:ffffea0018b482d8 offset:0 len:4096
         cnt:21 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:22 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:23 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:24 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:25 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:26 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:27 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:28 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:29 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:30 addr:ffffea0018b2b200 offset:0 len:4096
         cnt:31 addr:ffffea0018b48310 offset:0 len:4096

贴在上make_request_fn函数处的打印。从上面可以看到addr:ffffea0018b2b200 这个地址在同一个BIO中重复使用多次。

论坛徽章:
0
9 [报告]
发表于 2013-06-06 18:52 |只看该作者
个人认为BIO是相对于Page,bh才是每次提交的最小单位即(磁盘的blcok大小,一般512B)。才会被生成req,并被merge

论坛徽章:
4
酉鸡
日期:2014-03-21 23:19:50狮子座
日期:2014-08-01 22:11:40酉鸡
日期:2015-01-10 21:31:442015年辞旧岁徽章
日期:2015-03-03 16:54:15
10 [报告]
发表于 2013-06-06 20:37 |只看该作者
回复 8# hb12112

see mpage_readpages()
   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP