【问题标题】:Debugging Kernel panic调试内核恐慌
【发布时间】:2020-01-28 19:24:30
【问题描述】:

在我将内核从 3.18.19 升级到 3.18.140 之后。我遇到了一些内核问题,而且我是调试新手,希望了解有关内核恐慌的一些知识

Full crash log :https://del.dog/karnak_kmsg

如果有人愿意帮助我找出答案,我们将不胜感激。我花了几天时间才发现奇怪的问题。

内核来源:mt8163_kernel_upstreamed

所以当我在内核上的 vmlinux 上执行 objdump 时,它并没有告诉我它在内核上的什么文件。似乎编译器驱动程序也被污染了。 这就是我在这里得到的

[  118.822910] <0> (0)[3176:Compiler driver]CPU: 0 PID: 3176 Comm: Compiler driver Tainted: G      D        3.18.140-KFHD8-XTREME #1
[  118.822920] <0> (0)[3176:Compiler driver]Hardware name: MT8163 (DT)
[  118.822929] <0> (0)[3176:Compiler driver][name:traps&]Call trace:
[  118.822944] <0> (0)[3176:Compiler driver][<ffffffc00008adc0>] dump_backtrace+0x0/0x15c
[  118.822956] <0> (0)[3176:Compiler driver][<ffffffc00008af30>] show_stack+0x14/0x1c
[  118.822968] <0> (0)[3176:Compiler driver][<ffffffc000abab30>] dump_stack+0x88/0xac
[  118.822980] <0> (0)[3176:Compiler driver][<ffffffc000093e0c>] handle_IPI+0x18c/0x2bc
[  118.822991] <0> (0)[3176:Compiler driver][<ffffffc000082468>] gic_handle_irq+0x80/0x84
[  118.823001] <0> (0)[3176:Compiler driver]Exception stack(0xffffffc0220d7eb0 to 0xffffffc0220d7fd0)
[  118.823013] <0> (0)[3176:Compiler driver]7ea0:                                     00400000 00000000 00000000 00000000
[  118.823026] <0> (0)[3176:Compiler driver]7ec0: ffffffff ffffffff f71681fe 00000000 f257e5b0 00000000 00000013 00000000
[  118.823039] <0> (0)[3176:Compiler driver]7ee0: 00000059 00000000 00000008 00000000 00000001 00000000 00000000 00000000
[  118.823051] <0> (0)[3176:Compiler driver]7f00: 0000000b 00000000 00000004 00000000 f257e5b0 00000000 f1cae0a0 00000000
[  118.823064] <0> (0)[3176:Compiler driver]7f20: 00000002 00000000 0000033c 00000000 00000001 00000000 f257e4d0 00000000
[  118.823076] <0> (0)[3176:Compiler driver]7f40: 0000000a 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  118.823088] <0> (0)[3176:Compiler driver]7f60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  118.823100] <0> (0)[3176:Compiler driver]7f80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  118.823112] <0> (0)[3176:Compiler driver]7fa0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
[  118.823123] <0> (0)[3176:Compiler driver]7fc0: 00000000 00000000 00000000 00000000

我还使用新的更长日志而不是短日志编辑了 OP。我希望尽快修复这个内核,谢谢!

【问题讨论】:

  • strnlen() 调用错误的指针或页面大小边界上没有 NUL 终止符会引发页面错误。

标签: linux-kernel


【解决方案1】:

代码中的内存访问无效。根据转储,您传递了无效指针并尝试执行“strlen”。

如果不知道整个调用路径以及您所做的更改,就不可能告诉您出了什么问题。

【讨论】:

    猜你喜欢
    • 2018-10-01
    • 2021-08-28
    • 1970-01-01
    • 2013-12-12
    • 1970-01-01
    • 2012-02-08
    • 2015-12-11
    • 2023-03-26
    • 1970-01-01
    相关资源
    最近更新 更多