int filemap_write_and_wait_range(struct address_space * mapping, loff_t lstart, loff_t lend);
该函数是一个同步操作,将mapping中lstart至lend中的脏页刷盘,等待写回完成后再返回。也即将文件指定范围的内容持久化。mapping是文件在内存中的地址空间。
fsync
或 fdatasync
操作时,文件系统需要确保文件的数据和元数据被同步到存储设备。此时,会调用 filemap_write_and_wait_range
来写回数据。(GPT)