open_softirq(NET_TX_SOFTIRQ, net_tx_action); open_softirq(NET_RX_SOFTIRQ, net_rx_action); /* ... */ } 1. 2. 3. 4. 5. 6. 7. 8. 9. 驱动的中断处理函数触发net_rx_action这个为NET_RX_SOFTIRQ软中断注册的中断处理函数。 3. 网络数据监测和调优 当数据到来时,如果RX队列有足够的描述符...
_internal | | └─enqueue_to_backlog | | └─___napi_schedule触发do_softIRQ | ├─vhost_add_used_and_signal_n | | ├─vhost_add_used | | └─vhost_signal通知guest接收完成 | └─vhost_log_write记录dirty page ├─handle_tx_kick | └─handle_tx └─handle_rx_kick └─handle_tx ...
net_softirq 操作系统软中断内核进程关于NET_RX/NET_TX中断下半部的调度或执行延迟高的事件。 socketlatency Pod中的进程进行socket相关的读写操作的耗时久的事件。 kernellatency 内核在网络层处理报文耗时久的事件。 virtcmdlatency Virtio-net与宿主机通信耗时久的事件。 tcpreset 接收或发出TCP协议中带有RST标...
net_softirq 操作系统软中断内核进程关于NET_RX/NET_TX中断下半部的调度或执行延迟高的事件。 socketlatency Pod中的进程进行socket相关的读写操作的耗时久的事件。 kernellatency 内核在网络层处理报文耗时久的事件。 virtcmdlatency Virtio-net与宿主机通信耗时久的事件。 tcpreset 接收或发出TCP协议中带有RST标记的...
源码net_rx_action static __latent_entropy void net_rx_action(struct softirq_action *h) { struct softnet_data *sd = this_cpu_ptr(&softnet_data); unsigned long time_limit = jiffies + usecs_to_…
4、通过调度软中断NET_RX_SOFTIRQ来通知内核进一步处理接收帧。 目前很多网络驱动引入混合了轮询和中断的NAPI机制来通知并处理新的接收帧。高负载情况下有比较好降CPU负载的收益。 驱动通过netif_napi_add向NAPI注册自己的软中断轮询poll函数。 hns3代码Poll注册 ...
* This function may only be called from softirq context and interrupts * should be enabled. * * Return values (usually ignored): * NET_RX_SUCCESS: no congestion * NET_RX_DROP: packet was dropped */ //netif_receive_skb 是对于 netif_rx 的 NAPI 对等函数; 它递交一个报文给内核. 当一个...
然后设置NET_RX_SOFTIRQ标志位来触发软中断。 _napi_schedule(&rq-napi); static int virtnet_poll(struct napi_struct *napi, int budget) . again: while (received vq, &len) != NULL) num; received+; if (rq-num max / 2) -如果收包队列中可用的desc小于总大小的一半时,回收 if (!try_fill_...
All metrics and events provide pod-specific information, except net_softirq and virtcmdlat, which are not related to pods. Metric Description Probe inspector_pod_netdevrxbytes The number of bytes received by the NIC. netdev inspector_pod_netdevtxbytes The number of bytes sent...
All metrics and events provide pod-specific information, except net_softirq and virtcmdlat, which are not related to pods. Metric Description Probe inspector_pod_netdevrxbytes The number of bytes received by the NIC. netdev inspector_pod_netdevtxbytes The number of bytes sent by the NIC....