Назад | Перейти на главную страницу

Устранение неполадок «ядро: сторожевой таймер NMI: ОШИБКА: мягкая блокировка»

Недавно я столкнулся с проблемой с одним из наших экземпляров AWS, который на какое-то время стал вялым, а затем полностью перестал отвечать.

После расследования я обнаружил следующие сообщения в системном журнале.

kernel: NMI watchdog: BUG: soft lockup - CPU#3 stuck for 23s! [java:661466]

Что такое программная блокировка ЦП

Мягкая блокировка - это признак того, что задача или поток ядра используют и не освобождают ЦП в течение определенного периода времени.

Техническая причина мягкой блокировки связана с прерываниями процессора и nmiwatchdog. Для каждого ЦП в системе создается сторожевой процесс. Этот процесс «просыпается» раз в секунду, получает текущую отметку времени для ЦП, за который он отвечает, и сохраняет ее в структуре данных ЦП.

Я просто ищу способы решить эту проблему.

Некоторые из моих открытий.

Это может быть вызвано каким-то процессом в пространстве ядра, а не в пространстве пользователя.

Также во всех сообщениях «NMI watchdog ...» я вижу общий «java: same_pid». Может ли это быть что-то связано с этим java-процессом?

Это может быть связано с ошибкой в ​​ядре (с использованием 3.10.0-862.3.2.el7 в CentOS 7.5)

Следуя трассировке ядра

Dec  7 19:10:55 ip-10-200-5-169 kernel: CPU: 3 PID: 661466 Comm: java Kdump: loaded Tainted: G             L ------------   3.10.0-862.3.2.el7.x86_64 #1
Dec  7 19:10:55 ip-10-200-5-169 kernel: Hardware name: Xen HVM domU, BIOS 4.2.amazon 08/24/2006
Dec  7 19:10:55 ip-10-200-5-169 kernel: task: ffff9f1759b80fd0 ti: ffff9f1741f18000 task.ti: ffff9f1741f18000
Dec  7 19:10:55 ip-10-200-5-169 kernel: RIP: 0010:[<ffffffffa5861be4>]  [<ffffffffa5861be4>] fsnotify+0x284/0x510
Dec  7 19:10:55 ip-10-200-5-169 kernel: RSP: 0018:ffff9f1741f1bdf0  EFLAGS: 00000246
Dec  7 19:10:55 ip-10-200-5-169 kernel: RAX: ffff9f15b50a8cd8 RBX: 0000000000000001 RCX: 0000000000000002
Dec  7 19:10:55 ip-10-200-5-169 kernel: RDX: 0000000000000000 RSI: 0000000000000000 RDI: ffffffffa67e7a40
Dec  7 19:10:55 ip-10-200-5-169 kernel: RBP: ffff9f1741f1bec0 R08: 0000000000000000 R09: 0000000000000000
Dec  7 19:10:55 ip-10-200-5-169 kernel: R10: 0000000000000000 R11: 0000000000000000 R12: ffff9f1741f1be40
Dec  7 19:10:55 ip-10-200-5-169 kernel: R13: ffff9f1741f1bdf8 R14: ffff9f1741f1be08 R15: 0000000000000001
Dec  7 19:10:55 ip-10-200-5-169 kernel: FS:  00007f14ca015700(0000) GS:ffff9f1767ac0000(0000) knlGS:0000000000000000
Dec  7 19:10:55 ip-10-200-5-169 kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Dec  7 19:10:55 ip-10-200-5-169 kernel: CR2: 00007f1589226f80 CR3: 00000000e96d4000 CR4: 00000000001606e0
Dec  7 19:10:55 ip-10-200-5-169 kernel: Call Trace:
Dec  7 19:10:55 ip-10-200-5-169 kernel: [<ffffffffa581a533>] ? do_sync_write+0x93/0xe0
Dec  7 19:10:55 ip-10-200-5-169 kernel: [<ffffffffa581b0b8>] vfs_write+0x168/0x1f0
Dec  7 19:10:55 ip-10-200-5-169 kernel: [<ffffffffa581be3f>] SyS_write+0x7f/0xf0
Dec  7 19:10:55 ip-10-200-5-169 kernel: [<ffffffffa5d2082f>] system_call_fastpath+0x1c/0x21
Dec  7 19:10:55 ip-10-200-5-169 kernel: Code: 8b 5d 08 41 f7 d4 45 23 65 00 44 23 65 a4 48 85 db 74 08 8b 43 40 f7 d0 41 21 c4 f6 05 47 10 ac 00 04 0f 85 08 02 00 00 45 09 f4 <0f> 84 e6 fe ff ff 8b bd 78 ff ff ff 48 8d 75 b8 49 8b 43 08 4c

Любая информация по этой теме будет полезна.

Заранее спасибо. Мегананд.