dreamice 发表于 2008-11-26 21:05

Netconsole实例源代码分析

目录:
1.前言        - 2 -
2.实例配置        - 2 -
2.1 监控主机的配置        - 2 -
2.2 被监控主机的配置        - 2 -
2.3 实例测试        - 3 -
3.Netconsole内核源码分析        - 4 -
3.1 几个重要的数据结构        - 4 -
3.1.1 struct console        - 4 -
3.1.2 struct netpoll        - 5 -
3.1.3 struct net_device        - 5 -
3.1.4 struct netpoll_info        - 6 -
3.2 实现分析        - 6 -
3.2.1 Netconsole初始化        - 7 -
3.2.2 具体运行实现        - 11 -

Netconsole是Linux2.6版内核的一个新的特性。它允许将本机的dmesg系统信息,通过网络的方式传送到另一台主机上。这样,就可以实现远程监控某台机子的kernel panic信息了。使用起来非常方便,也给开发人员调试内核提供了更加便捷的途径。
……
详情请下载附件pdf

在内核版发了一遍,也提供给本版的兄弟们分享,多多指出不足:lol:

Godbach 发表于 2008-11-26 21:21

版主,你研究的速度也忒快了吧。呵呵,这个东西头次听说啊

dreamice 发表于 2008-11-26 21:23

原帖由 Godbach 于 2008-11-26 21:21 发表 http://linux.chinaunix.net/bbs/images/common/back.gif
版主,你研究的速度也忒快了吧。呵呵,这个东西头次听说啊

呵呵,我是从昨天下午开始研究的,这个要用到公司的产品上,可以监控客户那里发生kernel panic信息。

dreamice 发表于 2008-11-26 21:24

回复 #2 Godbach 的帖子

Godbach 多多指点:lol:

Godbach 发表于 2008-11-26 21:26

呵呵,这个我还没有研究过,改天多学习一下你的文章。
是不是你们的产品,在客户那边用,想远程看到panic信息。

dreamice 发表于 2008-11-26 21:30

原帖由 Godbach 于 2008-11-26 21:26 发表 http://linux.chinaunix.net/bbs/images/common/back.gif
呵呵,这个我还没有研究过,改天多学习一下你的文章。
是不是你们的产品,在客户那边用,想远程看到panic信息。

是的,有时候难免出现panic,在客户那里又不好抓,所以这个可以帮大忙。

Godbach 发表于 2008-11-26 22:22

实际中使用的效果怎么样啊?

我们的设备有时出现指针非法操作而重启的情形时,通过com口连接的终端上接收不到panic的信息。记得我在内核版发帖问dev_queue_xmit的那个问题,提到了重启没有panic的情况。

dreamice 发表于 2008-11-26 22:26

原帖由 Godbach 于 2008-11-26 22:22 发表 http://linux.chinaunix.net/bbs/images/common/back.gif
实际中使用的效果怎么样啊?

我们的设备有时出现指针非法操作而重启的情形时,通过com口连接的终端上接收不到panic的信息。记得我在内核版发帖问dev_queue_xmit的那个问题,提到了重启没有panic的情况。

如果很严重的panic估计很难处理了,因为netconsole实际上也是捕捉的终端信息,再通过网络发送到远端主机的。

Godbach 发表于 2008-11-26 22:30

原帖由 dreamice 于 2008-11-26 22:26 发表 http://linux.chinaunix.net/bbs/images/common/back.gif


如果很严重的panic估计很难处理了,因为netconsole实际上也是捕捉的终端信息,再通过网络发送到远端主机的。

是啊。我的那个问题就是在于free skb之后又引用skb但是就是重启,没有panic。
BTW,如何分析OOPS信息,dreamice兄那里有没有什么好的文章。

luo118 发表于 2008-11-26 22:31

好東西,下來看看。:mrgreen:
页: [1] 2 3
查看完整版本: Netconsole实例源代码分析