class RxQueue

Defined at line 24 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.h

Public Members

static const uint64_t kTriggerRxKey
static const uint64_t kSessionSwitchKey
static const uint64_t kFifoWatchKey
static const uint64_t kQuitWatchKey

Public Methods

zx::result<std::unique_ptr<RxQueue>> Create (DeviceInterface * parent)

Defined at line 26 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void ~RxQueue ()

Defined at line 20 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void AssertParentRxLocked (DeviceInterface & parent)

Helper function with TA annotations that bridges the gap between parent's locks and local

locking requirements; TA is not otherwise able to tell that the |parent| and |parent_| are the

same entity.

Defined at line 37 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.h

void Reclaim ()

Reclaims all buffers currently held by the device.

void PurgeSession (Session & session)

Drops all queued buffers attributed to the given session, and marks the session as rx-disabled.

Called by the DeviceInterface parent when the session is marked as dead.

Defined at line 147 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void CompleteRxList (const fidl::VectorView< ::fuchsia_hardware_network_driver::wire::RxBuffer> & rx_buffer_list)

Returns rx buffers to their respective sessions.

Defined at line 214 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void TriggerSessionChanged ()

Notifies watcher thread that the primary session changed.

Defined at line 115 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void TriggerRxWatch ()

Poke watcher thread to try to fetch more rx descriptors.

Defined at line 100 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void JoinThread ()

Kills and joins the watcher thread.

Defined at line 129 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.cc

void MaybeDelegateRxLease ()

Helper function to verify if a pending rx lease can be delegated to the

primary session.

uint64_t rx_completed_frame_index ()

Defined at line 61 of file ../../src/connectivity/network/drivers/network-device/device/rx_queue.h

Records