This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] DRA750:如何在 Linux 内核中启用硬锁定检测器

Guru**** 687780 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/840746/dra750-how-to-enable-hardlockup-detector-in-linux-kernel

器件型号:DRA750

尊敬的 TI 团队:

我正在使用 J6 DRA75x/74x SoC,我们使用的是内核版本4.4.14

我们需要为某些用例启用硬锁定功能。

但是、我们看到该支持不可用。

那么、需要做什么才能启用  

谢谢、

Viswa

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    您能否澄清一下您所谓的"支持不可用"的含义

    锁定检测是一种标准内核功能、需要通过内核配置启用  

    您是否已经从内核文档中查看了使用说明

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sriram、

    感谢你的答复。

    在内核中、我们支持 检测 softlock_up 和 hardlock_up。

    它存在于 kernel/watchdog.c 中。

    要启用 HARDLOCKUP,请执行以下操作:

    HARDLOCKUP_DETECTOR 取决于以下配置

    取决于:locking_detector [=y]&&!具有 NMI_watchdog [=n]&& perf_events [=y]&&具有 perf_events_NMI [=n]

    需要启用 FUST_PERF_Events_NMI 配置。

    符号:have _perf_events_NMI [=n]

     键入 :布尔值                                                                                                                                                                      

        在 arch/Kconfig:271中定义

    但在这里不确定如何启用它。  

    谢谢、

    Viswa

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Viswa

    您可以使用 menuconfig I/F 来查看和修改内核配置

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sriram、

    以下是我的调查结果

    检测 ARM cortex a15处理器中的硬锁定似乎不是一种直接的方法、因为它似乎是在英特尔处理器中。
    这是因为 cortex A15处理器上缺少 NMI 支持。
    因此、我们正在尝试寻找其他方法来检测 ARM cortex a15中的硬锁定。
    以下是我已确认 cortex A15上缺少 NMI 的源的链接、供您参考

    https://e2e.ti.com/support/processors/f/791/t/597890?Linux-DRA744-Using-NMIN-as-normal-interrupt-from-A15-MPCore

    另一种方法是使用另一个 CPU 来检测硬锁定、下面是补丁

    https://patchwork.kernel.org/patch/1967551/

    还有一种使用 PMU 和 FIQ 模拟 NMI 的方法、下面是参考链接

    https://www.linaro.org/blog/debugging-arm-kernels-using-nmifiq/

    如果您对此有任何想法、请告诉我。



    谢谢、
    Viswa

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Viswa

    好的、但是您是否确定您尝试调试的条件确实是硬锁定条件。

    您是否检查过用于锁定调试的软锁定检测器和其他内核黑客选项是否有任何帮助?

    我想不出支持硬锁定检测的答案

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Sriram、

    感谢你的答复。

    软锁定正常、CPU 回扫也可用。 但对于硬锁定、没有任何迹线。

    将检查其他黑客选项以进行锁定调试。

    谢谢、

    Viswa

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Viswa

    希望您能够利用软件锁定和锁定调试功能找出问题的根源

    Linux 似乎不支持您之前提到的硬件锁定检测功能-不要认为有 我们还没有探索其他任何选择

    请告诉我们是否可以将此线程标记为已关闭