| AllocRequestSlot() -> Expected< uint16_t > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| CalcDmaSize(uint16_t queue_size=128) -> size_t | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlinestatic |
| Create(uint64_t mmio_base, const DmaRegion &vq_dma, const DmaRegion &slot_dma, VirtToPhysFunc virt_to_phys=IdentityVirtToPhys, uint16_t queue_count=1, uint32_t queue_size=128, uint64_t driver_features=0) -> Expected< VirtioBlk > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlinestatic |
| DoEnqueue(ReqType type, uint16_t queue_index, uint64_t sector, const IoVec *buffers, size_t buffer_count, UserData token) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| EnqueueRead(uint16_t queue_index, uint64_t sector, const IoVec *buffers, size_t buffer_count, UserData token=nullptr) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| EnqueueWrite(uint16_t queue_index, uint64_t sector, const IoVec *buffers, size_t buffer_count, UserData token=nullptr) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| FindSlotByDescHead(uint16_t desc_head) const -> uint16_t | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| FreeRequestSlot(uint16_t idx) -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| GetCapacity() const -> uint64_t | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| GetNegotiatedFeatures() const -> uint64_t | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| GetRequiredSlotMemSize() -> std::pair< size_t, size_t > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlinestatic |
| GetRequiredVqMemSize(uint16_t queue_count, uint32_t queue_size) -> std::pair< size_t, size_t > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlinestatic |
| GetStats() const -> VirtioStats | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| HandleInterrupt(CompletionCallback &&on_complete) -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| HandleInterrupt() -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| Kick(uint16_t queue_index) -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| kMaxInflight | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | static |
| kMaxSgElements | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | static |
| MapBlkStatus(uint8_t status) -> ErrorCode | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivatestatic |
| negotiated_features_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| old_avail_idx_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| operator=(VirtioBlk &&other) noexcept -> VirtioBlk & | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| operator=(const VirtioBlk &) -> VirtioBlk &=delete | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | |
| ProcessCompletions(CompletionCallback &&on_complete) -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| Read(uint64_t sector, uint8_t *data) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| ReadConfig() const -> BlkConfig | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| request_completed_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| slot_bitmap_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| slot_dma_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| slots_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| stats_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| SubmitSyncRequest(ReqType type, uint64_t sector, const IoVec *buffers, size_t buffer_count) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| transport_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| UpdateUsedEvent() -> void | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| UserData typedef | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | |
| virt_to_phys_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| VirtioBlk()=delete | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | |
| VirtioBlk(VirtioBlk &&other) noexcept | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| VirtioBlk(const VirtioBlk &)=delete | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | |
| VirtioBlk(TransportT transport, VirtqueueT vq, uint64_t features, const DmaRegion &slot_dma, VirtToPhysFunc v2p) | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivate |
| vq_ | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | private |
| VringNeedEvent(uint16_t event_idx, uint16_t new_idx, uint16_t old_idx) -> bool | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inlineprivatestatic |
| Write(uint64_t sector, const uint8_t *data) -> Expected< void > | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | inline |
| ~VirtioBlk()=default | virtio::blk::VirtioBlk< TransportT, VirtqueueT > | |