Linux怎么判断网卡是否支持netdump功能
读趣百科>科普>科技数码

Linux怎么判断网卡是否支持netdump功能

内核调试工具netdump需要网卡驱动支持netpoll功能。netpoll的目的是让内核在网络和I/O子系统尚不能完整可用时,依然能发送和接收数据包。主要用于网络控制台(net console)和远程内核调试(KGDBoE)中。实现netpoll功能,主要是要实现kernel中的poll_controller函数,该函数定义:void (*poll_controller)(struct net_device *dev)。该函数的作用是在缺少设备中断的情况下,还能对控制器做出响应。几乎所有的poll_controller函数都定义成如下形式:

void my_poll_controller(struct net_device *dev) {

disable_device_interrupt(dev);

call_interrupt_handler(dev->irq, dev);

enable_device_interrupt(dev);

}

所以,poll_controller只是模拟了来自指定设备的中断。一个最简单的判断一个网卡驱动是否这次支持netpoll功能的方法是安装内核源代码,然后在代码树 /usr/src/kernel-中搜索HAVE_POLL_CONTROLLER的定义, grep -r "HAVE_POLL_CONTROLLER" /usr/src/linux-/drivers/net示例如下:

# grep -r "HAVE_POLL_CONTROLLER" /usr/src/linux-2.4/drivers/net

/usr/src/linux-2.4/drivers/net/3c59x.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/3c59x.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/e100/e100_main.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/e100/e100_main.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/e1000/e1000_main.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/e1000/e1000_main.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/e1000/e1000_main.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/eepro100.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/eepro100.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/pcnet32.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/pcnet32.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tg3.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tg3.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tlan.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tlan.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tulip/tulip_core.c:ifdefHAVE_POLL_CONTROLLER

/usr/src/linux-2.4/drivers/net/tulip/tulip_core.c:ifdefHAVE_POLL_CONTROLLER

从输出可以看到,3c59x, e100, e1000, eepro100, pcnet32, tg3, tlan和tulip都支持netpoll。

如果系统使用了这些网卡,那么系统应该支持netpoll,那么就支持netdump。

如果希望进一步确认网卡是否是使用这些网卡,可以查看/etc/modules.conf:

# cat /etc/modules.conf

alias eth1 e100

alias eth0 3c59x

4.SysRq

SysRq组合键是一组"魔术组合键",只要内核没有被完全锁住,键盘还能够使用,不管内核在做什么事情,使用这些组合键可以立即打印出内核的信息。

使用sysrq组合键是了解系统目前运行情况的最好方式。如果系统出现挂起的情况或者在诊断一些和内核相关,比较怪异,比较难重现的问题的时候,使用sysrq键是一个比较好的方式。

为了安全起见,默认SysRq组合键是关闭的。

打开这个功能,运行:

# echo 1 >/proc/sys/kernel/sysrq

关闭这个功能:

# echo 0 >/proc/sys/kernel/sysrq

如果想让此功能一直生效,在/etc/sysctl.conf里面设置kernel.sysrq的值为1. 重新启动以后,此功能将会自动打开。

kernel.sysrq = 1

因为打开sysrq键的功能以后,有终端访问权限的用户将会拥有一些特殊的功能。因此,除非是要调试,解决问题,一般情况下,不要打开此功能。如果一定要打开,请确保用户的终端访问的安全性。

最新科技数码科普

如何拆分合并excel单元格

在使用excel的过程中,有需要合并或者拆分单元格的,就是将多个单元格合并成一个,或者将一个大的单元格拆分成单个的很多个。那么怎么拆分合并excel单元格?本...
展开详情

autocad如何在相片上标尺寸

在我们实际工作中,为了更加准确的描述某个实物,常遇到标尺寸的问题。本章就利用AUTOCAD软件在相片上标尺寸方法解决这一问题。方法/步骤1、利用手机拍下你要标...
展开详情

雀巢胶囊咖啡机怎样 雀巢胶囊咖啡机优点及使用方法

雀巢胶囊咖啡机操作十分方便,能一键萃取咖啡,相比半自动咖啡机和全自动咖啡机来说更易于操作,雀巢胶囊咖啡机在使用的过程中不需要拆开,所使用的胶囊用完后可直接回收...
展开详情

天骏空气净化器怎么样 天骏空气净化器特点介绍

随着科学技术的进步,人们对于生活用水的好坏越来越注重,饮用水的好坏直接影响着人体健康, 净水器能够有效的保障饮用水的健康,天骏 空气净化器 就是其中的优秀代表...
展开详情

PS怎么精确移动像素px值

在PS中做设计的时候,经常需要对图层进行不停的移动来调整位置, 已达到需求的效果,那么如何知道移动的精确位置呢?自己总结了几点,希望可以对大家有帮助!1、打开...
展开详情

iPod电池有哪些常见问题 常见苹果iPod电池问题解决方法

常见苹果iPod电池问题解决方法,iPod是APPLE推出的一种大容量MP3播放器容量高达10~160GB,可存放2500~10000首MP3歌曲,它还有完善...
展开详情

买macbookpro后悔了,Mac太贵而且端口极其不便捷

这么多年来,MacBook Air一直是Mac用户想要购买超轻薄笔记本的首选,不过苹果在刚刚发布的MacBook Pro上,进行了大刀阔斧的设计变革,让Mac...
展开详情

微软两周狂发7个预览版:Windows10 RedStone 2重磅升级很可能月底推送

进入三月份之前就曾报道微软的Windows 10 RedStone 2公开推送已经箭在弦上,距离发射只差一步。ps.这是继2015年11月、2016年8月之后...
展开详情
热门推荐

风管机如何才能省电 风管机省电技巧

风管机和空调,在我们居民朋友的眼中都是比较耗电的。无论是大品牌还是小品牌,在使用风管机和空调的时候,因为要耗费大量的电力,所以居民朋友一般都不敢长时间的使用,...
展开详情

海信电视的屏幕大小怎么调 海信电视的屏幕大小怎样调

以海信电视:LED32N2000为例。打开电视,按下遥控器上的【设置】按钮,会在电视上弹出【设置菜单】。然后找到并点击【图像设置】,接着进入系统浏览器,找到选...
展开详情

哈啰顺风车一天可以接几单 哈啰顺风车一天可以接几单

顺风车的出现无疑给跨城出行的人们带来了方便,很多人需要跨城出行时都会选择在哈啰顺风车里预约车辆,这就使很多车主想要成为哈啰顺风车司机。不过由于跨城出行距离较远...
展开详情

风管机怎么用才能省电 风管机省电小技巧

现在我们购买产品,除了保证所购买的产品性能好之外,还要求这个产品要省电,因为只有省电的电器,我们才不用额外去多支付一些电费,给我们的经济带来压力。现在是夏天,...
展开详情

如何取消手机上网包流量套餐

现在上网有很多种方式,我们可以通过GPRS数据流量进行上网,同时我们也可以使用WLAN进行上网。不管是哪一种上网方式我们都需要开通相应的业务才能实现,那么这些...
展开详情