当前位置:网站首页>cat /proc/kallsyms 发现内核符号表值都为0
cat /proc/kallsyms 发现内核符号表值都为0
2022-08-04 11:06:00 【android framework】
最近调试内核,cat /proc/kallsyms 后发现符号表值都为0。
检查内核配置项,该配的都已经配置。
查找很多网上资料,说是内核为了防止漏洞出现,特意不让非root用户查看符号表。
但是我将shell切换为root,还是只能查看到0.
因此只能修改内核代码。kernel/kernel/kallsyms.c
static int s_show(struct seq_file *m, void *p)
{
struct kallsym_iter *iter = m->private;
/* Some debugging symbols have no name. Ignore them. */
if (!iter->name[0])
return 0;
if (iter->module_name[0]) {
char type;
/*
* Label it "global" if it is exported,
* "local" if not exported.
*/
type = iter->exported ? toupper(iter->type) :
tolower(iter->type);
seq_printf(m, "%pK %c %s\t[%s]\n", (void *)iter->value,
type, iter->name, iter->module_name);
} else
seq_printf(m, "%pK %c %s\n", (void *)iter->value,
iter->type, iter->name);
return 0;
}
需要将seq_printf(m, “%pK %c %s\t[%s]\n”, (void *)iter->value,
type, iter->name, iter->module_name); 中的K去掉,重新编译烧写内核即可。
seq_printf(m, “%p %c %s\t[%s]\n”, (void *)iter->value,
type, iter->name, iter->module_name);
边栏推荐
猜你喜欢

使用.NET简单实现一个Redis的高性能克隆版(二)

第二批养老理财试点产品发行 一小时销售20亿元

Zikko上市同时搭载HDMI2.1和2.5GbE新款雷电4扩展坞

复盘:经典的HR面试问题,这些问题可以挖掘你个人的素质,看看你是否合适合我们部门

【LeetCode】700.二叉搜索树

ThreadLocal详细分析

C#/VB.NET:在 Word 中设置文本对齐方式

Heap Sort

上帝空间——全球首个基于Web3.0的艺术协议创意平台,拓宽多元艺术融合边界

Graphic and text hands-on tutorial--ESP32 MQTT docking EMQX local server (VSCODE+ESP-IDF)
随机推荐
Super Learning Method
【黄啊码】MySQL入门—2、使用数据定义语言(DDL)操作数据库
复盘:经典的HR面试问题,这些问题可以挖掘你个人的素质,看看你是否合适合我们部门
中介者模式(Mediator)
[easyUI]修改datagrid表格中的值
Four ways to traverse a Map
Google Earth Engine APP ——制作上传GIF动图并添加全球矢量位置
Using .NET to simply implement a high-performance clone of Redis (2)
Mysql数据类型
华为云安全云脑,让企业云化运营更放心
【励志】复盘的重要性
3-5年以上的功能测试如何进阶自动化?
Rust 入门指南 (用 WASM 开发第一个 Web 页面)
ROI LTV CPA ECPM体系讲解
【Inspirational】The importance of review
[Hongke case] Assembling furniture based on 3D camera
Mysql高级篇学习总结14:子查询优化、排序优化、GROUP BY优化、分页查询优化
Apache Calcite 框架原理入门和生产应用
Business collocations
ORA-00054 资源正忙