Linux内核热补丁
文章平均质量分 92
kaka__55
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
linux内核热补丁KLP原理浅析
第五步,完成过渡,也就是klp_try_complete_transition()函数的工作,这块也是klp的核心工作,但逻辑也不复杂。绝大部分工作由函数klp_try_switch_task()完成,本质上,对于非running的task,就是通过检查函数栈,确定函数的调用链路里面不涉及本次更新的代码(详见函数klp_check_stack()),就可以让该task度过“klp的过渡状态”,清除该task的TIF_PATCH_PENDING,并修改task->patch_state。原创 2026-02-14 19:14:40 · 898 阅读 · 0 评论 -
内核热补丁和function trace的兼容性浅析
内核热补丁和function trace能同时生效,本质是因为ftrace框架设计良好的插件化架构:共享基础设施:都依赖-mfentry编译选项和动态代码补丁机制职责分离:function trace是"观察者"(只读),livepatch是"劫持者"(改写IP)标志位区分:通过FTRACE_OPS_FL_IPMODIFY标志管理对执行流的修改权限链表遍历:多个ops可以共存,按注册顺序依次执行。原创 2026-03-29 12:31:02 · 351 阅读 · 0 评论
分享