class IoBufferDispatcher
Defined at line 36 of file ../../zircon/kernel/object/include/object/io_buffer_dispatcher.h
Public Methods
zx_obj_type_t get_type ()
Defined at line 49 of file ../../zircon/kernel/object/include/object/io_buffer_dispatcher.h
IobEndpointId GetEndpointId ()
Defined at line 51 of file ../../zircon/kernel/object/include/object/io_buffer_dispatcher.h
zx_status_t Create (uint64_t options, const RegionArray & region_configs, KernelHandle<IoBufferDispatcher> * handle0, KernelHandle<IoBufferDispatcher> * handle1, zx_rights_t * rights)
Create a pair of IoBufferDispatchers
Defined at line 175 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
void ~IoBufferDispatcher ()
Defined at line 289 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_rights_t GetMapRights (zx_rights_t iob_rights, size_t region_index)
Defined at line 240 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_rights_t GetMediatedRights (size_t region_index)
Defined at line 247 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
const fbl::RefPtr<VmObject> & GetVmo (size_t region_index)
Defined at line 251 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx::result<fbl::RefPtr<VmObject>> CreateMappableVmoForRegion (size_t region_index)
Defined at line 366 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_iob_region_t GetRegion (size_t region_index)
Defined at line 255 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
size_t RegionCount ()
Defined at line 259 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_info_iob_t GetInfo ()
Defined at line 326 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_iob_region_info_t GetRegionInfo (size_t index)
Defined at line 332 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx::result<uint32_t> AllocateId (size_t region_index, user_in_ptr<const ktl::byte> blob_ptr, size_t blob_size)
Allocates an ID out of a ZX_IOB_DISCIPLINE_ID_ALLOCATOR region.
Defined at line 397 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx::result<> Write (size_t region_index, user_in_iovec_t message)
Performs a mediated write to a region.
May block on page requests and must be called without locks held.
Defined at line 555 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
void on_zero_handles_locked ()
PeeredDispatcher implementation
Defined at line 265 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
void OnPeerZeroHandlesLocked ()
Defined at line 267 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_status_t set_name (const char * name, size_t len)
Defined at line 342 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx_status_t get_name (char (&)[32] out_name)
Defined at line 337 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
void OnZeroChild ()
VmObjectChildObserver implementation
Defined at line 275 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
Protected Methods
zx::result<IobRegionVariant> CreateIobRegionVariant (fbl::RefPtr<VmObject> ep0_vmo, fbl::RefPtr<VmObject> ep1_vmo, fbl::RefPtr<VmObject> kernel_vmo, const zx_iob_region_t & region, zx_koid_t vmo_user_id, fbl::RefPtr<IoBufferSharedRegionDispatcher> shared_region)
static
Defined at line 410 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
zx::result<fbl::Array<IobRegionVariant>> CreateRegions (const IoBufferDispatcher::RegionArray & region_configs, VmObjectChildObserver * ep0, VmObjectChildObserver * ep1)
static
Defined at line 47 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
void IoBufferDispatcher (fbl::RefPtr<PeerHolder<IoBufferDispatcher>> holder, IobEndpointId endpoint_id, fbl::RefPtr<SharedIobState> shared_state)
Defined at line 231 of file ../../zircon/kernel/object/io_buffer_dispatcher.cc
Records
Friends
class IoBufferWriterDispatcher