- 论坛徽章:
- 0
|
本帖最后由 l6590789 于 2013-07-12 20:22 编辑
大家好,我想在linux内核中找到网卡发送队列的长度,不知道找到的函数和变量是否正确
我找的函数是
341static int pfifo_fast_enqueue(struct sk_buff *skb, struct Qdisc* qdisc)
342{
343 struct sk_buff_head *list = prio2list(skb, qdisc);
344
345 if (skb_queue_len(list) < qdisc->dev->tx_queue_len) {
346 qdisc->q.qlen++;
347 return __qdisc_enqueue_tail(skb, qdisc, list);
348 }
349
350 return qdisc_drop(skb, qdisc);
351}
我个人认为 skb_queue_len(list)是我要找的网卡当前发送队列长度而dev->tx_queue_len是网卡所能允许的最大发送队列长度值,不知道我的判断是否正确。如果linux系统有多个网卡的时候,那又怎么获得多个网卡队列的长度呢?我又该通过什么接口截取到这个值呢? |
|