自己写的, 方便调试。 $ cat pf-vf echo "physfn is $1"echo "pf info:"ls /sys/class/net/$1 -lecho "vf info:"eth_dev=`ls /sys/class/net/$1/device/virtfn* -l | cut ...
分类:
其他好文 时间:
2016-08-02 11:30:14
阅读次数:
2101
网卡驱动架构分析:
1. Linux网络子系统
2. 重要数据结构
总结一下三个重要的数据结构:
2.1. net_device
2.2. net_device_ops
2.3. sk_buff
3. 网卡驱动架构分析
CS8900.c //早期2410使用的网卡芯片
3.1. 网卡初始化
首先找到驱动程...
分类:
其他好文 时间:
2016-05-30 14:59:54
阅读次数:
252
转自:http://www.wowotech.net/device_model/uevent.html 1. Uevent的功能 Uevent是Kobject的一部分,用于在Kobject状态发生改变时,例如增加、移除等,通知用户空间程序。用户空间程序收到这样的事件后,会做相应的处理。 该机制通常是 ...
分类:
系统相关 时间:
2016-05-11 12:53:33
阅读次数:
317
对于2.6的内核,net_device内部存在一个结构体指针,
struct dev_mc_list *dev->mc_list通过对它的访问,可以循环获取所有的组播MAC地址。但是,在新的内核中(至少在3.10中)发生了变化,取而代之的是
struct netdev_hw_addr_list mc;我们可以通过直接对mc进行访问来获取相应的数据,也可以利用Linux内核提供的宏。ne...
分类:
系统相关 时间:
2016-05-07 09:18:03
阅读次数:
174
Linux 网络设备驱动程序由 4 部分组成,分别是网络设备媒介层、网络设备驱动层、网络设 备接口层及网络协议接口层。网络设备媒介层包括各种物理网络设备和传输媒介。对于网络设备 接口层,Linux 系统用 Net_device 结构表示网络设备接口。Net_device 结构保存所有与硬件有关 的接 ...
分类:
移动开发 时间:
2016-04-27 12:32:44
阅读次数:
148
static voidfec_restart(struct net_device *dev, int duplex)函数。 ...
分类:
其他好文 时间:
2016-04-19 10:02:15
阅读次数:
1946
DM9000数据发送 DM9000数据发送函数是在/drivers/net/dm9000.c中的dm9000_start_xmit函数 static int dm9000_start_xmit(struct sk_buff *skb, struct net_device *dev){ //发送数据长
分类:
其他好文 时间:
2016-03-12 21:07:34
阅读次数:
199
上锁net_device结构的组织一节可知,dev_base列表以及dev_name_head和dev_name_index两张hash表由dev_base_list锁保护。然而,该锁只用于对列表和hash表的访问予以串行化,而不是对net_device数据结构内容变更予以串行化。net_devic...
分类:
系统相关 时间:
2016-01-10 15:43:53
阅读次数:
165
四。DM9000网卡驱动深度分析 1. DM9000的初始化 DM9000_init() { 1. 分配 net_device 结构 2. 从 platform_device 中获取地址中断号 3. 把获取的地址映射成虚拟地址 操作函数 io_remp()...
分类:
系统相关 时间:
2015-12-27 21:47:20
阅读次数:
161
本系列文章由muge0913编写,转载请注明出处:http://www.openext.org/2015/10/kernel-net_device/微博:http://weibo.com/muge0913...
分类:
Web程序 时间:
2015-10-04 14:49:40
阅读次数:
138