我们有一个驱动程序通过从块层通过其他块设备的“make_request_fn”发送BIO,将数据直接写入磁盘扇区。
但不知怎的,数据没有立即写入磁盘,当我重新启动机器时,重启前写入磁盘的数据消失了。
如果下次重启之前,数据可以在下次重启时正确反映
我在编写
删除系统缓存“fsyhc; echo 1> / proc / sys / vm / drop_caches“写完后
我们也尝试了以下方法,但它们都没有用。
这发生在像VMware这样的真机和虚拟环境中。 操作系统是Ubuntu 14.4.3,内核3.19和Ext4文件系统。
我想知道是否有人可以解释原因并帮助我。