+ -
当前位置:首页 → 问答吧 → 小弟最近在看e1000e网卡驱动,有几处不明,还请大虾指教一二~~

小弟最近在看e1000e网卡驱动,有几处不明,还请大虾指教一二~~

时间:2010-09-05

来源:互联网

1. 在驱动中没有找到给报文添加MAC头的地方,在内核代码了转了一圈也没有找到相应的地方,现在很是困惑,还请大虾指点指点。


2.在e1000_probe()中,有对descriptor的数目进行初始化:
adapter->rx_ring->count =256;
adapter->tx_ring->count =256;

netdev->tx_queue_len在ether_setup()中被初始化为1000

然后在e1000_configure_tx()中:
adapter->tx_queue_len = adapter->netdev->tx_queue_len;

总觉得netdev->tx_queue_len与adapter->tx_ring->count之间有着一定的关系,但是一直没有找到,也没有找到netdev->tx_queue_len具体起什么作用,感觉就是赋了个值,就再没有用上
还请兄弟们指点指点啊

作者: lofeng410   发布时间: 2010-09-05

1.添加MAC头部是在协议栈中,而不是驱动中。
2.netdev->tx_queue_len是发送队列长度,adapter->tx_ring->count是发送环形缓冲区的数目。
两者没有直接的互动关系。

作者: ShadowStar   发布时间: 2010-09-06

多谢~~

1. 能说说是在协议栈中哪个函数中添加mac头的么?

2. netdev->tx_queue_len具体有什么左右呢?
adapter->tx_ring->count能感觉到他的左右,但是netdev->tx_queue_len一点都感觉不到,连他的存在也还是在无意中看到,这里很是不解
还请指教哈

作者: lofeng410   发布时间: 2010-09-06

不好意思,上贴中把 作用 写成 左右 了

作者: lofeng410   发布时间: 2010-09-06

热门下载

更多