AIX 系统夯住、HMC 与 SSH 均无法登录的分析
2017年4月7日 08:08 听全文
故障描述
AIX操作系统夯住,通过HMC或者SSH无法登录。
系统环境
AIX 5300-11-07
故障分析
由于系统当时已经夯住,已经无法打开终端进行操作,因此在故障现场当时收集AIX操作系统的forcedump数据。该系统的内存为116GB,dump收集成功,系统重启后恢复正常。

通过dump的数据可以看到共有36个逻辑CPU,其中每个CPU运行的进程如下:


通过dla命令查看是否有死锁,经分析发现有220条死锁产生,具体如下:

下面分析死锁的原因,经分析发现死锁都是在等TID为A7233的线程。

经查TID为A7233的线程为IBM.CSMAgent。也就是说220个线程在等IBM.CSMAgent。

下面分析为什么IBM.CSMAgent会hang,通过分析可知IBM.CSMAgent运行在CPU0上,它是在等同样运行在CPU0上的xmtopas线程,而xmtopas优先级是18,IBM.CSMAgent的优先级是3A,因此IBM.CSMAgent会等高优先级的xmtopas完成后再进行响应。

而经分析xmtopas此时运行不正常,抛出signal 11异常退出的代码,而由时由于该进程内存越界,因此xmtopas进程进入了一个死循环的状态,这样就阻塞了后面的IBM.CSMAgent,同时pending住了后面的进程,最终造成系统HANG。
故障建议
针对此问题,由于xmtopas进程目前在该系统中没有使用,它主要是执行topas -C命令时在一个LPAR上收集其它LPAR cpu信息时才会使用,因此通过禁用xmtopas服务来规避该问题。

作者专栏:http://www.aixchina.net/Column/detail/id/7
本系列文章:
varyonvg报错(LVM相关)的分析及处理
P780上保留内存(不可分配给分区使用)占用率较高的原因及解决办法
与内存参数numperm_global相关的AIX系统宕机
此类情况下oracle数据库重启,四种方案可解决
AIX异常宕机后自动启动,原因究竟为何?
AIX操作系统宕机(内存参数kernel_heap_psize相关)
AIX系统CPU占用率100%,究竟什么原因?
故障案例分析:AIX网络性能问题