Public Member Functions |
unsigned | get_params (Utcb &utcb, unsigned disk, DiskParameter *params) |
unsigned | get_disk_count (Utcb &utcb, unsigned &count) |
unsigned | attach (Utcb &utcb, void *dma_buffer, size_t dma_size, cap_sel tmp_cap, DiskConsumer *consumer, KernelSemaphore *notify_sem) |
unsigned | read_write (Utcb &utcb, bool read, unsigned disk, unsigned long usertag, unsigned long long sector, unsigned dmacount, DmaDescriptor *dma) |
unsigned | read (Utcb &utcb, unsigned disk, unsigned long usertag, unsigned long long sector, unsigned dmacount, DmaDescriptor *dma) |
unsigned | write (Utcb &utcb, unsigned disk, unsigned long usertag, unsigned long long sector, unsigned dmacount, DmaDescriptor *dma) |
unsigned | flush_cache (Utcb &utcb, unsigned disk) |
unsigned | get_completion (Utcb &utcb, unsigned &tag, unsigned &status) |
unsigned | add_logical_disk (Utcb &utcb, const char *name, unsigned num_segments, Segment *segments) |
unsigned | add_logical_disk (Utcb &utcb, const char *names[], unsigned num_segments, Segment *segments) |
unsigned | check_name (Utcb &utcb, unsigned disk, const char *name, bool &match) |
| Check whether a disk is known under a specific name.
|
unsigned | get_stats (Utcb &utcb, unsigned disk, Stats &stats) |
| DiskProtocol (CapAllocator *a, unsigned instance) |
void | destroy (Utcb &utcb, CapAllocator *a) |
| GenericNoXlateProtocol (const char *service, unsigned instance, unsigned cap_base, bool blocking, unsigned session_base=~0u) |
Utcb & | init_frame (Utcb &utcb, unsigned op) |
unsigned | call_server (Utcb &utcb, bool drop_frame) |
| Call the server in a loop to resolve all faults.
|
unsigned | call_server_drop (Utcb &utcb) |
unsigned | call_server_keep (Utcb &utcb) |
template<class T > |
void | destroy (Utcb &utcb, unsigned portal_num, T *obj) |
| Destroy the object.
|
void | close (Utcb &utcb, unsigned portal_num, bool revoke_lock=true, bool _release_pseudonym=true) |
| Close the session to the parent.
|
unsigned | get_notify_sm () |
| GenericProtocol (const char *service, unsigned instance, unsigned cap_base, bool blocking, unsigned session_base=~0u) |
| static_assert ((CAP_PT_PERCPU+Config::MAX_CPUS)< (1U<< Config::CAP_RESERVED_ORDER),"Capability Space misconfiguration.") |
Client part of the disk protocol.
Missing: register shared memory producer/consumer.