一、什么叫双重故障
当一个处理器在执行异常处理程序时遇到了另一个异常,或者在进行异常处理时由于错误的栈处理而触发了一个新的异常,就会发生双重故障(double fault)现象,从而导致系统崩溃。 通常情况下,一些系统级别的操作或不属于当前处理器特权级别的指令执行可能会导致异常。例如,内存不足,堆栈溢出,硬件损坏等都可能导致异常。而一旦在异常处理程序中再次触发了异常,处理器可能无法处理第二个异常,从而导致双重故障现象,故系统崩溃。 在系统出现双重故障时,需要对异常处理程序进行检查,以确保它们可以正确地执行。同时,也应该对系统内存、硬件设备、驱动程序等方面进行检查,以防止发生异常或硬件故障。 为了防范双重故障引起的崩溃,需要提高硬件、操作系统和应用程序的健壮性,减少异常情况的发生。另外,及时更新驱动程序和操作系统是保持系统稳定的重要步骤。
二、故障现象
VMware hypervisor(ESXi)上的RHEL guest由于双重故障而崩溃.Panic message in kernel ring buffer:
VMCIUtil: Updating context id from 0xffffffff to 0xcb9e450a on event 0. SPLXMOD: SPLX 3.0: KHM loaded. Version [30114] VMCIUtil: Updating context id from 0xcb9e450a to 0xcb9e450a on event 0. VMCIUtil: Updating context id from 0xcb9e450a to 0xcb9e450a on event 0. double fault: 0000 [#1] SMP last sysfs file: /sys/devices/system/cpu/online CPU 3 Modules linked in: splxmod(U) autofs4 nfs lockd fscache auth_rpcgss nfs_acl sunrpc vsock(U) ipv6 ppdev parport_pc parport microcode vmware_balloon sg vmci(U) i2c_piix4 i2c_core shpchp ext4 jbd2 mbcache sd_mod crc_t10dif sr_mod cdrom vmxnet3 vmw_pvscsi pata_acpi ata_generic ata_piix dm_mirror dm_region_hash dm_log dm_mod [last unloaded: splxmod] Pid: 17805, comm: java Not tainted 2.6.32-358.23.2.el6.x86_64 #1 VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform RIP: 0010:[] [] __do_page_fault+0x26/0x480 RSP: 0018:00007f08fff96f88 EFLAGS: 00010006 RAX: 0000000000000000 RBX: 00007f08fff970d8 RCX: 000000008100ba4e RDX: 0000000000000000 RSI: 000000000000cbc0 RDI: 00007f08fff970d8 RBP: 00007f08fff97098 R08: 00007f08f807ec50 R09: 0000000004000001 R10: 0000000000000001 R11: 0000000000000202 R12: 0000000000000000 R13: 000000000000cbc0 R14: 0000000000000000 R15: 0000000000000000 FS: 00007f08fffb7700(0000) GS:ffff8800282c0000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f08fff96f78 CR3: 000000042bf0f000 CR4: 00000000000007e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process java (pid: 17805, threadinfo ffff88013c7e6000, task ffff8802c6436080) Stack: 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 0000000000000000 Call Trace: Code: 00 00 00 00 00 55 48 89 e5 48 81 ec 10 01 00 00 48 89 5d d8 4c 89 65 e0 4c 89 6d e8 4c 89 75 f0 4c 89 7d f8 0f 1f 44 00 00 89 d0 <48> 89 bd 00 ff ff ff 49 89 d7 83 e0 02 49 89 f5 83 f8 01 89 85 RIP [] __do_page_fault+0x26/0x480 RSP <00007f08fff96f88>
三、解决方案
我们解决此问题的建议是:
原创文章,作者:保哥,如若转载,请注明出处:https://www.shizhanxia.com/1449.html
评论列表(1条)
插件更新后测试