[daily][dpdk] 内核模块(网卡驱动)无法卸载

由于程序的异常退出, 内核的引用计数没有被清除(我猜的). 所以驱动不能被卸载掉, 强制也不行.

如下:

[[email protected] ~]# insmod /opt/scorpion/KingKong/kmod/igb_uio.ko
insmod: error inserting ‘/opt/scorpion/KingKong/kmod/igb_uio.ko‘: -1 File exists
You have new mail in /var/spool/mail/root
[[email protected] ~]# rmmod /opt/scorpion/KingKong/kmod/igb_uio.ko [[email protected] ~]# insmod /opt/scorpion/KingKong/kmod/igb_uio.ko 

ERROR: Module igb_uio is in use
[[email protected] ~]# rmmod -f /opt/scorpion/KingKong/kmod/igb_uio.ko
ERROR: Removing ‘igb_uio‘: Resource temporarily unavailable
insmod: error inserting ‘/opt/scorpion/KingKong/kmod/igb_uio.ko‘: -1 File exists
You have new mail in /var/spool/mail/root
[[email protected] ~]# rmmod /opt/scorpion/KingKong/kmod/igb_uio.ko
ERROR: Module igb_uio is in use
[[email protected] ~]# rmmod -f /opt/scorpion/KingKong/kmod/igb_uio.ko
ERROR: Removing ‘igb_uio‘: Resource temporarily unavailable

因为 -f 参数实际上是没有起作用的. 可以修改内存参数使其其作用, 这样就能强制卸载了.

这个参数的名字是:

CONFIG_MODULE_FORCE_UNLOAD
[[email protected] ~]# cat /boot/config-3.4.68-1.el6.x86_64  |grep FORCE_UNLOAD
# CONFIG_MODULE_FORCE_UNLOAD is not set
[[email protected] ~]# 

不过需要重新编译内核才行.

时间: 2024-08-02 02:24:16

[daily][dpdk] 内核模块(网卡驱动)无法卸载的相关文章

Linux 网卡驱动的安装

一.网卡驱动安装的一般思路 1.首先从硬 件安装,检查网卡本身故障 2.检查网卡芯片型号(注意不是硬件品牌) 常见的网卡芯片有Intel RC82545EM/Realtek 8139D/ Broadcom NetXtreme/3Com 3C940/SIS900/VIA VT6105L 通过命令查看本机:lspci 3.查看系统是否包含对应型号的网卡驱动 目录:/lib/modules/release/kernel/drivrs/net 4.检查网卡驱动是否加载 lsmod命令查看当前系统加载的模

Ubuntu14.04台式机r8169有线网卡驱动问题

由于台式在安装了Ubuntu14.04后插入网线后灯不亮,不能使用有线网. 查找资料发现原来是网卡驱动问题,解决办法如下: 1.查看网卡驱动名称 lspci -v 找到以太网连接的kernel drive in use:r8169 2.查看r8169的具体版本 modinfo r8169查看是不是最新版本,不是的话可能是版本太老了 3.卸载原先的驱动 sudo rmmod r8169 4.去Intel官网通过网卡版本或者网卡驱动名称找到网卡驱动r8169的各个版本 下载一个较新的,这里下载的版本

如何为ESXI安装网卡驱动

在给物理服务器安装ESXI的过程中经常会遇到网卡驱动问题,如果是买的是Dell.HP.IBM等厂商的服务器,一般这些厂商在VMware公司发布新的ESXI版本后都会进行重新封装,将相关的设备的驱动程序添加到ESXI里面,从而减少手工为ESXI安装驱动程序. 前段时间公司有一台新的服务器,标配的是千兆网卡:后来又采购了intel板载的4口万兆光口网卡,插上服务器后发现ESXI并没有成功识别该网卡,即使重启或者重新安装ESXI也是如此,这明显就是ESXI系统里没有包含这个型号的网卡驱动的原因导致的.

【转】 linux内核移植和网卡驱动(二)

原文网址:http://blog.chinaunix.net/uid-29589379-id-4708911.html 一,内核移植步骤: 1, 修改顶层目录下的Makefile ARCH            ?= $(SUBARCH) CROSS_COMPILE   ?= $(CONFIG_CROSS_COMPILE:"%"=%) 修改为: ARCH :=arm CROSS_COMPILE :=/usr/local/arm/4.4.3/bin/arm-linux- 2, 拷贝配置文

ubuntu下升级网卡驱动

无线局域网环境下,有个笔记本儿的无线经常断,而其它的终端都好好的,唯独它不行.所以想到检查和更新下无线网卡的驱动看看.以下是操作流程,记录一下. 阅读说明:##为标签, //为注释 ##得到主板上的网卡的大概信息 lspci |grep -i network 06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10) 06:06.0 Network controller:

网卡驱动设计---架构分析加回环网卡驱动设计(网卡驱动上)

网卡驱动架构分析: 1. Linux网络子系统 2. 重要数据结构 总结一下三个重要的数据结构: 2.1. net_device 2.2. net_device_ops 2.3. sk_buff 3. 网卡驱动架构分析 CS8900.c //早期2410使用的网卡芯片 3.1. 网卡初始化 首先找到驱动程序的入口: 早期的驱动入口并不是module_init()函数,而是init_module,所以找到这个函数 int __init init_module(void) { struct net_

8139too.c网卡驱动简单分析

从事linux C开发工作以来,工作内容主要是在应用层,对nginx和unbound等软件有些了解,也常对这2个软件进行二次开发. 对网络这块一直比较有兴趣.也很好奇网卡到底是怎么接受到报文的,以及报文如何被应用层所接受.自己在网上学习了一下,做个简单总结. 以飨后人.基本上我觉得分以下几个部分: 一.预备知识 1.PCI设备是有标准的,就是说PCI设备必须在固定位置包含公司.设备等信息,这样内核启动的时候读取出来,并保存在 struct pci_dev中.最终将所有PCI设备,组织成一个链表结

vmware虚拟网卡驱动无法安装

卸载vmware之后,重新安装,出现虚拟网卡驱动无法安装的情况,在切换网络适配器的状态时,提示无法将网络设置为桥接状态:没有未桥接的主机网络适配器!<ignore_js_op> 打开虚拟机的虚拟网络编辑器,发现了问题所在,网络中少了一个桥接模式的VMnet0 !打开设备管理器,发现网络适配器中根本没有虚拟网卡驱动的存在!原因时第一个VMware没有卸载干净,注册表仍有存留,导致安装不正常,使用cclearner清理注册表,清理完成,重启,重新安装,安装完成发现网络适配器中已经存在两个虚拟网卡驱

linux下安装编译网卡驱动的方法

安装linux操作系统后发现没有网卡驱动,表现为 system → Administration → Network下Hardware列表为空. 以下为安装编译网卡驱动的过程,本人是菜鸟,以下是我从网上找的资料进行整理,并实际操作的过程,仅供借鉴.  一.检测linux系统内核版本和网卡类型,相关命令如下: uname -r                    查看linux内核版本 (uname -a 可显示所有信息)lsmod                        设备加载情况 l