尝试添加模块的目标文件时,add-symbol-file返回-s无效参数

问题描述

我正在使用vmlinux调试gdb vmlinux /proc/kcore,并且要添加符号文件,安装了模块,然后检查.bss.data.init中的/sys/module/simple_module/sections。当我尝试将add-symbol-file与模块的目标文件以及节的位置一起使用时,gdb返回Unrecognized argument " -s"。但是从help add-symbol-file中,我可以看到-s实际上是一个有效的参数。

add-symbol-file simple_module.ko 0xc0ce9000 \ -s .bss 0xc0d833c0 \ -s .data 0xc0d83000

我认为模块的代码不是真正必要的,但是无论如何

#include <linux/module.h>
#include <linux/init.h>
#include <linux/kernel.h>

MODULE_LICENSE("GPL");
MODULE_AUTHOR("whoami");
MODULE_DESCRIPTION("Simple LKM");

int i; // non-init variable
char text[20] = "Hello,World!";

static int __init initialization_function(void)
{
    pr_info("Module: my message!\n");
    return 0;
}

static void __exit cleanup_funcion(void)
{    
    pr_info("Module: Cleanup done,exiting.\n");
}

module_init(initialization_function);
module_exit(cleanup_funcion);

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)