tywwdz 发表于 2014-12-23 21:03

各位大神,这个问题真难倒我了,请进来看看

内核中的读写请求通过bio下发,写请求的内容可以直接通过bio获得,那么读请求最后读到的内容到底怎么获得呢?

镇水铁牛 发表于 2014-12-23 22:46

写的BIO会直接从page cache中DMA到设备上,BIO的读是个反向操作:lol

humjb_1983 发表于 2014-12-24 08:50

呵呵,不就是读到指定的内存缓冲区中么?

tywwdz 发表于 2014-12-24 16:06

回复 2# 镇水铁牛
能不能描述清楚一点,比如我想获得每次从磁盘读到的内容并操作,应该在内核代码的哪部分修改呢

   

tywwdz 发表于 2014-12-24 16:09

回复 3# humjb_1983


    能不能具体一点,我想对读取的内容进行操作。比如对于md设备的写来说,直接在make_request()中获取bv_page的内容便可,然而读请求的bio则不知道被下发到哪去了,在哪可以准确的获得每次读到的内容呢。

镇水铁牛 发表于 2014-12-24 22:53

你看看submit_bh就明白了。
页: [1]
查看完整版本: 各位大神,这个问题真难倒我了,请进来看看