【Linux 菜鸡中心】linux 驱动模块卸载, rmmod 报错 “Segmentation fault (core dumped)”

news/2024/11/19 18:20:52/

【Linux 菜鸡中心】驱动模块卸载,rmmod 报错 “Segmentation fault (core dumped)”


【引子】开此专栏主要记录,Linux开发过程中遇到的各种菜鸡问题,常执鞭大笑以策之。


【菜鸡简述】:写一个linux驱动模块时,insmod正常,rmmod时卸载总是失败,报错:

Segmentation fault (core dumped)

【菜鸡原因】:“懒得写,所以拷贝了一下”

写过驱动模块程序的,应该熟悉以下内容:

static int __init module_init(void)
{...
}
static void __init module_exit(void)
{...
}
...
...
...
module_init(module_init);
module_exit(module_exit);

是不是一眼就看出来错误在哪了,TAT,题主还各种找了半天。

【菜鸡纠正】:

static void __init module_exit(void)

修改为:

static void __exit module_exit(void)

问题解决。


注:报错时,使用 dmesg 命令查看有如下打印:

[  202.575701] Unable to handle kernel paging request at virtual address ffffff8000f7b100
[  202.575884] Mem abort info:
[  202.575972]   ESR = 0x86000007
[  202.576054]   Exception class = IABT (current EL), IL = 32 bits
[  202.576164]   SET = 0, FnV = 0
[  202.576226]   EA = 0, S1PTW = 0
[  202.576292] swapper pgtable: 4k pages, 39-bit VAs, pgd = ffffff800a1c9000
[  202.576423] [ffffff8000f7b100] *pgd=000000027fffe003, *pud=000000027fffe003, *pmd=000000026049d003, *pte=0000000000000000
[  202.576675] Internal error: Oops: 86000007 [#1] PREEMPT SMP
[  202.576778] Modules linked in: test(O-) fuse bnep zram overlay btusb btrtl btbcm btintel ath10k_pci ath10k_core ath mac80211 spidev cfg80211 nvgpu bluedroid_pm ip_tables x_tables
[  202.577223] CPU: 0 PID: 8637 Comm: rmmod Tainted: G           O    4.9.140-tegra #1
[  202.577415] Hardware name: NVIDIA Jetson Xavier NX Developer Kit (DT)
[  202.577940] task: ffffffc18d161c00 task.stack: ffffffc15677c000
[  202.578367] PC is at 0xffffff8000f7b100
[  202.578681] LR is at SyS_delete_module+0x15c/0x208
[  202.580466] pc : [<ffffff8000f7b100>] lr : [<ffffff80081554dc>] pstate: 20400145
[  202.587824] sp : ffffffc15677fe50
[  202.591232] x29: ffffffc15677fe50 x28: ffffffc18d161c00 
[  202.596492] x27: ffffff8008f72000 x26: 000000000000006a 
[  202.602338] x25: 0000000000000123 x24: 0000000000000015 
[  202.607763] x23: 0000000000000000 x22: ffffff800a165000 
[  202.612806] x21: ffffffffffffffff x20: ffffff8000f79300 
[  202.618348] x19: ffffff8009e77000 x18: 0000007f90480a70 
[  202.623948] x17: 0000007f903fdc90 x16: ffffff8008155380 
[  202.629477] x15: 0000000000000000 x14: 0000000000000000 
[  202.635409] x13: ffffffff00000000 x12: ffffffffffffffff 
[  202.641010] x11: 0000000000000020 x10: 7f7f7f7f7f7f7f7f 
[  202.646363] x9 : fefefeff73726473 x8 : 0000000000000000 
[  202.652383] x7 : ffffffffffffffff x6 : 00000000ffffffff 
[  202.657896] x5 : 0000000000000000 x4 : 0000000000000000 
[  202.663234] x3 : ffffff8000f79608 x2 : 0000000000000020 
[  202.668572] x1 : ffffff8009e77750 x0 : ffffff8000f7b100 [  202.675321] Process rmmod (pid: 8637, stack limit = 0xffffffc15677c000)
[  202.681440] Call trace:
[  202.684063] [<ffffff8000f7b100>] 0xffffff8000f7b100
[  202.688359] [<ffffff8008083900>] el0_svc_naked+0x34/0x38
[  202.693435] ---[ end trace e0fd7e6d506f82f2 ]---

http://www.ppmy.cn/news/803669.html

相关文章

linux alsa驱动讲解

转载自&#xff1a;https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/477412/ 程式前沿 幫助程式設計師解決問題&#xff0c;增加專業技能&#xff0c;提升個人能力與未來世界競爭力。 程式語言前端開發IOS開發Android 開發雲端運算人工智慧伺服器搜尋資料庫軟體開發…

PostgreSQL 10.23 安装图文教程

目录 一、PostgreSQL介绍 二、下载安装包 三、安装教程 今天给大家分享Win10操作系统安装PostgreSQL 10.23图文教程&#xff0c;希望对大家学习PostgreSQL 能有所帮助&#xff01; 一、PostgreSQL介绍 PostgreSQL&#xff08;简称Postgres&#xff09;是一款功能强大的开源…

uuid-golang中的使用---借鉴使用官网的办法--推荐

写在最前面的话&#xff0c;golang因为是国外开发的&#xff0c;官网&#xff0c;github都是网速卡或者不能使用的&#xff0c;这个时候可以使用国内的&#xff0c;搜索软件包或者下载 https://gitee.com/ 如果可以使用的话&#xff0c;建议从下面两个网站使用&#xff0c; …

苹果计算机怎么隐藏应用,苹果电脑怎么隐藏界面图标

苹果Mac如何隐藏桌面的设备图标?如果你是一个极简主义者&#xff0c;你一定不希望 OS X 的桌面太过于凌乱&#xff0c;你可以通过文件夹将文件、照片整理起来&#xff0c;你也可以让 Dock 隐藏&#xff0c;但是当你插入外接驱动、USB 驱动以及其它硬件设备的时候&#xff0c;桌…

mac笔记本电脑外接显示器没有声音

用mac 笔记本电脑办公&#xff0c;因为屏幕太小而需要外接到大屏幕的显示器中&#xff0c;但是可能会出现没有声音的问题&#xff0c;那么通过以下设置就可以解决了。 1、打开系统偏好设置 2、选择声音 3、选择输出>>>内置扬声器 这时候播放音乐&#xff0c;笔记本就…

mac电脑或者遇到外接移动硬盘遇到文件白色解决办法

并在且在复制、移动时会提示“不能更改xx中的一个或多个项目,因为它们正在使用中“&#xff0c;出现这个问题可以用如下方法解决。 查看某文件的附加属性 $ xattr -l filename 去除某文件的附加属性 $ xattr -c filename 去除某目录下所有文件、目录的附加属性 $ xattr -…

适合新手的mac电脑使用技巧 苹果电脑的快捷键和使用技巧

新手在操作Mac电脑是自然会有很多不适应的地方&#xff0c;这时候你就要学习一些关于mac电脑使用技巧啦&#xff01;这篇文章主要为大家带来一些关于苹果电脑的快捷键和使用技巧&#xff0c;主要用于文本操作&#xff0c;有兴趣的朋友可以来这里了解一下哦&#xff01; 移动与选…

mac笔记本怎么外接显示屏_苹果MAC笔记本怎么外接显示器

展开全部 很多使用Macbook Air或Pro的Mac用户在连接外接显示器或投影的时候会有许多问题&#xff0c;之前32313133353236313431303231363533e4b893e5b19e31333365643661有写过关于Mac如何连接外接显示器的设置教程(点击前往)&#xff0c;今天为大家带来的是Mac外接显示器的显示…