Chinaunix首页 | 论坛 | 博客
  • 博客访问: 436156
  • 博文数量: 99
  • 博客积分: 65
  • 博客等级: 民兵
  • 技术积分: 1012
  • 用 户 组: 普通用户
  • 注册时间: 2012-04-20 16:30
个人简介

linux kernel 工程师

文章分类

全部博文(99)

文章存档

2018年(5)

2017年(12)

2016年(27)

2015年(10)

2014年(43)

2012年(2)

我的朋友

发布时间:2014-02-11 17:48:28

__netif_receive_skb用来实现驱动与协议栈的结合static int __netif_receive_skb(struct sk_buff *skb){ struct packet_type *ptype, *pt_prev; rx_handler_func_t *rx_handler; struct net_device *orig_dev; struct net_device *null_or_dev; bool deliver_exact = false; in.........【阅读全文】

阅读(4099) | 评论(0) | 转发(0)

发布时间:2014-02-11 17:10:29

dev_add_pack用来实现项协议栈增加协议handlerstruct packet_type { __be16   type; /* This is really htons(ether_type). */    //用来与skb->protocol进行匹配 struct net_device *dev; /* NULL is wildcarded here      */&.........【阅读全文】

阅读(2036) | 评论(0) | 转发(0)

发布时间:2014-02-11 14:23:32

softnet_data是个percpu变量/* * Incoming packets are placed on per-cpu queues */struct softnet_data { struct Qdisc  *output_queue; struct Qdisc  **output_queue_tailp; // napi->poll_list结构挂入这个list,包括NAPI接口的driver以及非NAPI接口的drive.........【阅读全文】

阅读(3918) | 评论(0) | 转发(1)

发布时间:2014-02-11 12:09:44

process_backlog是softnet_data->backlog的poll函数, 作为非NAPI接口的处理函数
net_rx_action调用poll函数时会使用它。......【阅读全文】

阅读(1497) | 评论(0) | 转发(0)

发布时间:2014-02-11 12:00:56

netif_rx相比NAPI是旧的接口, 在中断中进行调用。将skb放入softnet_data的input_queue中。
中断一次只收一个包。......【阅读全文】

阅读(1158) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册