通过调试重建内核模块(驱动程序)

Shwoseph

在过去的一天里,我一直在尝试启用调试功能来重建我的iwlwifi模块。完成此操作的方法是使用.config参数CONFIG_IWLWIFI_DEBUG = y进行构建。如果要构建一个新内核,这很容易,但是我想继续使用已安装的ubuntu内核。目前,我不关心安装模块。我只想查看.ko文件的生成,对其进行insmod并检查/ sys / modules / iwlwifi / parameters / debug(如果该模块是为调试而构建的)则应该存在。官方的ubuntu方法是什么?

到目前为止,这是我正在做的事情:

我的内核是4.15.0-43-generic,标头已经安装在/usr/src/linux-headers-4.15.0-43-generic中

  1. 使用apt-get安装了/usr/src/linux-source-4.15.0并将其解压缩到〜/

  2. 在〜/ linux-4.15.0 / .config和/usr/src/linux-headers-4.15.0-43-generic/.config中设置CONFIG_IWLWIFI_DEBUG = y,因为我不确定会使用哪个。

  3. 在〜/ linux-4.15.0 / drivers / net /.../ iwlwifi中,我运行make -C / lib / modules / $(uname -r)/ build M = $(pwd)模块

  4. ko模块已构建,但未启用调试功能

Shwoseph

原来,我需要在标头dir中运行make脚本。它会因失败而退出,但是我想它会首先对构建参数执行所需的任何操作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

内核驱动程序和内核模块之间有什么区别?

如何从ubuntu 16.04内核客户端和内核模块中删除nvidia驱动程序,或使内核clent和模块使用相同的nvidia驱动程序?

内核模块中的驱动程序代码无法执行?

如何列出受SecureBoot影响的驱动程序/内核模块?

如何检查给定的驱动程序内核模块是否支持给定的设备?

字符设备,平台驱动程序和内核模块之间的区别

Wifi加密狗缺少内核模块的编译/安装驱动程序?

当驱动程序有内核模块时,为什么我的相机不工作?

如何防止内核模块视频驱动程序探测特定的图形卡设备

在多个不同的内核模块(驱动程序)之间进行通信

在Linux内核模块(驱动程序)关键部分等待用户空间输入

Nvidia驱动程序安装错误-“内核模块生成失败。”

linux内核驱动程序调试日志

从内核模块调试堆栈

为其他内核版本重建驱动程序

如何为Wacom数位板驱动程序重建内核?

声音驱动程序-AWS EC2 ubuntu 16.04实例的snd-aloop内核模块设置问题

如何通过删除设备驱动程序(模块)引起内核崩溃?

物理机的内核模式驱动程序调试

如何调试导致内核崩溃的驱动程序?

调试正在加载的内核模块

使用gdb调试Linux内核模块

内核模块未找到调试符号

内核模块中的调试堆栈溢出

有没有一种方法可以在运行时知道驱动程序是内核模块还是静态链接?

恢复特定的内核和模块(nvidia 驱动程序)

Linux内核驱动程序模块:使用单个驱动程序处理多个设备文件

如何阻止内核内置的驱动程序,即不是模块的驱动程序

如何在 Yocto 中彻底重建 Linux 内核模块?