编写适用于 Oracle® Solaris 11.2 的设备驱动程序

退出打印视图

更新时间: 2014 年 9 月
 
 

GLDv3 状态更改通知

驱动程序可以调用以下函数来通知网络栈驱动程序的状态已更改。

void mac_tx_update(mac_handle_t mh);
void mac_tx_ring_update(mac_handle_t mh, mac_ring_handle_t rh)

mac_tx_update(9F)mac_tx_ring(9F) 函数通知框架有更多 TX 描述符可用。如果 mc_tx()mri_tx() 返回了非空数据包链,则驱动程序必须在资源可用后立即调用 mac_tx_update()mac_tx_ring_update(),通知 MAC 层重试之前作为未发送的数据包返回的数据包。有关 mc_tx()mri_tx() 入口点的更多信息,请参见Transmit Data Path

void mac_link_update(mac_handle_t mh, link_state_t new_state);

mac_link_update(9F) 函数通知 MAC 层介质链接的状态已更改。new_state 参数必须为以下值之一:

LINK_STATE_UP

介质链路为启动状态。

LINK_STATE_DOWN

介质链路为关闭状态。

LINK_STATE_UNKNOWN

介质链路为未知状态。