当前位置: 首页 > news >正文

导出内核函数符号并重新编译安装

目录
  • 前言
  • linux内核的编译安装
  • 其余问题

前言

实践cgroup的内核机制时,想要用到cgroup.c中的cgroup_attach_task()函数,首先这个函数属于kernel内的,并且这个函数并没有导出符号,因此在我原本的linux系统中无法使用显示调用这个函数

解决方法是,修改linux内核源码,添加cgroup_attach_task()函数的符号导出,然后重新编译并且安装修改后的linux内核,在新内核环境(有这个函数符号的环境)下进行使用

linux内核的编译安装

参考文章 https://blog.csdn.net/qq_40650634/article/details/147782354

其中我用的是make olddefconfig,并且如果无需其他具体的修改,就不用再make menuconfig

其余问题

大模型给出了一个说法是,如果要添加内核函数的符号导出,在对应的头文件中也需要同时声明新函数,之后再进行内核的编译与安装,但是在我的实践中,只需要添加内核函数的符号导出即可,在头文件中声明的工作可以在内核编译安装结束之后再进行

重新编译安装后的内核中确实有我做过的修改EXPORT_SYMBOL_GPL(cgroup_attach_task);//modify

sea@fanbao~$:cd /lib/modules/5.15.189/source/kernel/cgroup
sea@fanbao:/lib/modules/5.15.189/source/kernel/cgroup$ cat cgroup.c | grep "EXPORT_SYMBOL_GPL(cgroup_attach_task)"
EXPORT_SYMBOL_GPL(cgroup_attach_task);//modify
http://www.vanclimg.com/news/12.html

相关文章:

  • LGP4782 [LG TPLT] 2-SAT 学习笔记
  • Biomu测试手册
  • 老车子ce导航 瑞风s5换大屏安卓导航
  • 老安卓机子延年益寿 更新webview和let x1根证书
  • 手把手玩转本地大模型:Ollama+DeepSeek+Dify 零门槛全流程指南
  • 6N90-ASEMI电源管理专用6N90
  • Biomu测试手册
  • 老车子ce导航 瑞风s5换大屏安卓导航
  • 老安卓机子延年益寿 更新webview和let x1根证书
  • 手把手玩转本地大模型:Ollama+DeepSeek+Dify 零门槛全流程指南
  • 6N90-ASEMI电源管理专用6N90