Linux-3.8.2有些时候无法进入kdump系统

kouyaofei 2017-11-28 05:19:06
1.之前通过修改grub、kdump.conf,可以确保当前系统中的kdump服务正常:
/etc/rc.d/init.d/kdump status
Kdump is operational

- 此外,通过“”echo c > /proc/sysrq-trigger“”的方法,每次都可以切换到kdump系统

2.目前的问题是:
- 在一些内核崩溃的场景中,没有切换到kdump系统
- 我增加了一些打印,确认是在内核:panic->crash_kexec->machine_kexec->load_segments()时,内联了汇编代码:
static void load_segments(void)
{
__asm__ __volatile__ (
"\tmovl %0,%%ds\n"
"\tmovl %0,%%es\n"
"\tmovl %0,%%ss\n"
"\tmovl %0,%%fs\n"
"\tmovl %0,%%gs\n"
: : "a" (__KERNEL_DS) : "memory"
);
}

- 进入这些汇编之后,就没有出来,也没有通过relocate_kernel()完成内核的切换

哪位前辈熟悉汇编,或者内核crash的机制,能不能给解释一下:
a.这些汇编实在干啥
b.像我这种情况,可能哪里还有问题

对了,这个问题可以通过自动化脚本进行复现,也就是说是必现的,是否还有一些打印可以做,也希望指点。汇编不熟啊。。。
...全文
664 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
mark2017 2021-08-02
  • 打赏
  • 举报
回复

请问楼主,这个问题最终是如何解决的?我们目前也遇到类似的问题,非常感谢

kouyaofei 2017-11-29
  • 打赏
  • 举报
回复
顶起。。。。
kouyaofei 2017-11-29
  • 打赏
  • 举报
回复
再顶咯。。。

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧