You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译Linux内核6.9.0-rc4时,如何禁用CONFIG_KRETPROBE_ON_RETHOOK?手动修改为何失效?

问题解答

为什么手动修改.config后配置自动恢复为y?

CONFIG_KRETPROBE_ON_RETHOOK的Kconfig定义里用了def_bool y,这意味着当依赖条件满足时,它的默认值是开启状态。内核的配置系统在执行make时会自动验证所有配置项的依赖关系和默认值:

  • 只要HAVE_RETHOOK和KRETPROBES这两个依赖项处于开启(y)状态,且没有其他配置项强制关闭它,配置系统就会将其恢复为默认的y。
  • 手动直接修改.config属于“硬改”,没有通过内核配置工具更新配置依赖的元数据,所以make时会被配置系统的自动校验逻辑覆盖。

如何禁用CONFIG_KRETPROBE_ON_RETHOOK?

有两种可行的方式,根据你的需求选择:

方式1:通过内核配置工具修改(推荐)

使用官方提供的配置工具修改,能正确处理依赖关系,避免被自动覆盖:

  • 字符界面:执行make menuconfig,找到对应配置项(通常在Kernel hacking > Instrumentation support路径下),将其设置为n后保存退出。
  • 图形界面:执行make xconfig或make gconfig,搜索KRETPROBE_ON_RETHOOK,取消勾选后保存。

方式2:脚本化修改

如果需要批量或自动化操作,用内核自带的配置脚本修改:

scripts/config --disable KRETPROBE_ON_RETHOOK

执行后再运行make,配置就不会被自动恢复。

特殊情况:如果需要保留KRETPROBES

如果你的场景必须开启KRETPROBES,只能通过上述配置工具或脚本命令强制将CONFIG_KRETPROBE_ON_RETHOOK设为n——因为依赖满足时只有主动通过配置工具标记为关闭,才能覆盖def_bool y的默认值。

内容的提问来源于stack exchange,提问作者hdthky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 13:17:16