[153039.317114] hrtimer: interrupt took 2016981 ns
参考 What does "hrtimer: interrupt" mean? 这个消息通常是因为非常高的CPU使用率的时候出现,表示CPU的一个中断事件。如果偶然看到则不用担心。但是如果经常看到hrtimer: interrupt消息则表示服务器资源不足,需要迁移到资源更多的服务器或者需要排查运行在服务器上的应用看是否有导致系统hang住的软件。
[12718399.920299] device-mapper: ioctl: unable to remove open device docker-253:1-1053135-994bc83181568ed5a7f985b121535d0088ad8c2d5c80e43691a472590f204701-init
看来在OS内部使用了Docker
traps: php-fpm[27016] general protection ip:6abbe9 sp:7ffff953ee30 error:0 in php-fpm[400000+860000]
General protection fault(GPF)是Intel x86处理器的保护机制。如果处理器检测到一个protection violation(保护违反),就会停止执行代码并发送一个GPF中断。很多情况下姜导致操作系统从执行队列中删除故障的进程,通知用户,并继续执行其他进程。但是,如果操作系统没有捕获到general protection fault,例如,其他保护校验在操作系统从上一个GPF中断中返回之前又发生了一个protection violation,此时处理器就会触发double fault,就会停止操作系统。如果是另外一个failure(triple fault)发生(接连发生3次),则处理器停止工作并且响应一个reset操作。
php-fpm[26318]: segfault at 7f223d1df128 ip 000000000067a851 sp 00007ffff953ef20 error 4 in php-fpm[400000+860000]
php-fpm segfault常见的错误有error 4和error 6
上述系统日志显示php-fpm多次触发GPF
导致php-fpm GPF的库文件是taeprobe.so (traps: php-fpm[28635] general protection ip:7f223396fc80 sp:7ffff953ec40 error:0 in taeprobe.so[7f2233965000+f000]),所以推测是TAE存在的BUG。
In looking at the changelog for the latest available 3.10 kernel on Centos 7.2, I don't see any fixes that appear related, so I'm hesitant to just roll out a kernel upgrade in hopes it fixes it. I've been unable to locate similar panics in my searching.