ZIm/crates/eval/examples/virtio_block_request_refactor/prompt.md
2025-04-15 16:52:08 +00:00

780 B
Raw Blame History

Refactor the virtio block devices I/O handling to eliminate generic type parameters from file engine structures, replacing them with the concrete PendingRequest type. Update the AsyncFileEngine and FileEngine implementations to directly handle PendingRequest in all operations, ensuring error types like RequestError propagate this request context. Rename UserDataError/UserDataOk to RequestError/RequestOk and adjust their internals to store PendingRequest instead of a generic user_data. Simplify imports (e.g., consolidate io_uring imports) and modify test code to initialize PendingRequest properly with default values where needed. Maintain all existing async/sync I/O functionality, including dirty memory tracking and request completion logic.