我正在寫一個Linux塊設備驅動程序,它通過一個註冊爲blk_init_queue()
的函數接收請求。Linux塊設備驅動程序請求排序 - RaW?
我的硬件設備對請求進行重新排序,因此避免了寫後衝突衝突,因此需要在發出read(lba x)
之前等待write(lba x)
的完成。
我的問題:請問在Linux塊層跟蹤原料的衝突,它會不問題read(lba x)
直到收到一個請求完成(通過__blk_end_request_all(req r)
)爲前面的write(lba x)
,或做我必須做的,在我的驅動程序?