mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 11:07:35 +00:00
Kernel/NVMeQueue: Use waitqueue in submit_sync_sqe
The current way we handle sync commands is very ugly and depends on lot of preconditions. Now that we have an end_io handler for a request, we can use WaitQueue to do sync commands more elegantly. This does depend on block layer sending one request at a time but this change is a step forward towards better IO handling.
This commit is contained in:
parent
0096eadf40
commit
a65b0cbe4a
2 changed files with 7 additions and 16 deletions
|
@ -95,6 +95,7 @@ private:
|
|||
OwnPtr<Memory::Region> m_sq_dma_region;
|
||||
Vector<NonnullRefPtr<Memory::PhysicalPage>> m_sq_dma_page;
|
||||
Span<NVMeCompletion> m_cqe_array;
|
||||
WaitQueue m_sync_wait_queue;
|
||||
Memory::TypedMapping<DoorbellRegister volatile> m_db_regs;
|
||||
NonnullRefPtr<Memory::PhysicalPage const> m_rw_dma_page;
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue