버그: 소프트 잠금 - x초 동안 CPU 번호가 멈췄습니다.

버그: 소프트 잠금 - x초 동안 CPU 번호가 멈췄습니다.

나는 이것에 대한 몇 가지 성가신 버그 보고서와 문제(Stackexchange 및 다른 곳에서)를 보았습니다 "BUG: soft lockup - CPU#<n> stuck for <dt>s!". 지금까지 아무런 단서도 찾지 못했어요해보거나 시도해 보세요(반대로, 내가 찾아낸 단서들은 이런 일이 일어나는 것을 막지 못했습니다.) 제가 더 걱정하는 이유는 다음과 같습니다.

  1. 최근에는 이러한 사건의 발생빈도가 서서히 증가하고 있는 것으로 보이며(월 700건 이상),
  2. yum update재부팅하면 잠시 속도가 느려지지만 일부 잠금이 다시 발생하기 시작하는 것을 볼 수 있습니다.
  3. 이러한 일이 발생하면 모든 대화형 셸을 포함하여 여러 프로세스(전체 호스트는 아니더라도 알기 어렵습니다)가 잠시 동안 정지됩니다.
  4. 관련이 있는지는 잘 모르겠지만 ntpd가 시계를 업데이트할 수 없는 것과 관련된 로그/메시지가 많이 표시됩니다.

다음은 발췌 내용입니다 $(grep 'soft lockup' /var/log/messages*).

Mar 22 10:02:35 localhost kernel: BUG: soft lockup - CPU#15 stuck for 10s! [kjournald:1048]
Mar 22 10:02:36 localhost kernel: BUG: soft lockup - CPU#0 stuck for 10s! [postgres:5372]
Mar 22 10:02:36 localhost kernel: BUG: soft lockup - CPU#8 stuck for 10s! [postgres:5368]
Mar 22 10:02:37 localhost kernel: BUG: soft lockup - CPU#0 stuck for 10s! [postgres:5372]
Mar 22 10:02:37 localhost kernel: BUG: soft lockup - CPU#8 stuck for 10s! [postgres:5368]
Mar 22 10:02:38 localhost kernel: BUG: soft lockup - CPU#0 stuck for 10s! [postgres:5372]
Mar 22 10:02:38 localhost kernel: BUG: soft lockup - CPU#8 stuck for 10s! [postgres:5368]
Mar 22 10:02:39 localhost kernel: BUG: soft lockup - CPU#0 stuck for 10s! [postgres:5372]
Mar 22 10:02:39 localhost kernel: BUG: soft lockup - CPU#8 stuck for 10s! [postgres:5368]
Mar 22 10:02:40 localhost kernel: BUG: soft lockup - CPU#15 stuck for 25s! [swapper:0]
Mar 22 15:42:16 localhost kernel: BUG: soft lockup - CPU#8 stuck for 25s! [kjournald:1048]
Mar 22 18:22:13 localhost kernel: BUG: soft lockup - CPU#15 stuck for 10s! [postgres:21356]
Mar 22 18:22:20 localhost kernel: BUG: soft lockup - CPU#7 stuck for 10s! [java:8653]
Mar 22 18:22:20 localhost kernel: BUG: soft lockup - CPU#8 stuck for 72s! [kjournald:1048]
Mar 22 21:21:37 localhost kernel: BUG: soft lockup - CPU#12 stuck for 29s! [kjournald:1048]
Mar 22 21:22:07 localhost kernel: BUG: soft lockup - CPU#12 stuck for 27s! [kjournald:1048]
Mar 23 02:01:47 localhost kernel: BUG: soft lockup - CPU#8 stuck for 10s! [kblockd/8:276]
Mar 23 02:02:22 localhost kernel: BUG: soft lockup - CPU#8 stuck for 34s! [kblockd/8:276]

이는 임의 프로세스에서 발생하며 이 가상 호스트의 16개 "코어"에 상당히 균등하게 분산된 것으로 보입니다.

호스트는 AMI 이름이 "EC2 CentOS 5.5 GPU HVM AMI(드라이버 260.19.29)(ami-42a2532b)"인 AWS EC2 "cc1.4xlarge" 인스턴스입니다. Xen을 사용하여 가상화한 것 같습니다.

cat /etc/redhat-releaseCentOS release 5.9 (Final)보고 된 메모리는 21G 'free'입니다.

헤더는 dmesg다음과 같습니다

Linux version 2.6.18-348.3.1.el5 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-54)) #1 SMP Mon Mar 11 19:39:25 EDT 2013
Command line: ro root=/dev/VolGroup00/LogVol00 rhgb quiet console=tty0 console=ttyS0,115200n8
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000010000 - 000000000009fc00 (usable)
 BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 00000000c0000000 (usable)
 BIOS-e820: 00000000fc000000 - 0000000100000000 (reserved)
 BIOS-e820: 0000000100000000 - 00000005dd800000 (usable)
DMI 2.4 present.
DMI: Xen HVM domU, BIOS 3.4.3-2.6.18 08/29/2012
ACPI: RSDP (v002    Xen                                ) @ 0x00000000000ea020
ACPI: XSDT (v001    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc0062b0
ACPI: FADT (v004    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc005ee0
ACPI: MADT (v002    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc005fe0
ACPI: SRAT (v001    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc0060c0
ACPI: SLIT (v001    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc006240
ACPI: HPET (v001    Xen      HVM 0x00000000 HVML 0x00000000) @ 0x00000000fc006270
ACPI: DSDT (v002    Xen      HVM 0x00000000 INTL 0x20090220) @ 0x(null)

다음은 가장 최근 기간 동안 이러한 "소프트 잠금"의 누적 수를 보여줍니다(빨간색 선은 마지막 실행에서 나온 것이고 yum update그 뒤에 reboot) 소프트 잠금의 누적 수.

다음은 기간(호스트가 정체된 기간)에 대한 히스토그램을 보여줍니다 기간 히스토그램.

답변1

또한 3.6 및 3.8 커널이 설치된 Xen 4.2(AlpineLinux)에서도 이 문제가 발생했습니다.

나는 그것을 검색했고 내 커널에 clocksource=jiffies를 추가하여 문제를 해결했습니다. jiffies 외에도 "pits"를 시도해 볼 수도 있습니다.

이라는 보고도 있다.BIOS에서 C-상태 비활성화.

답변2

Thinkpad T520에도 동일한 문제가 있습니다. 하지만 커널을 해킹하는 대신 더 간단한 일을 했습니다. 우선 Centos7을 사용하고 있는데, 제가 설치한 기본 시스템으로는 모든 것이 잘 됩니다. 나중에 GNOME GUI를 추가했는데 그때부터 위의 문제가 발생하기 시작했습니다. 많은 제조업체에서 Windows 설치를 위한 설정을 갖고 있는 것으로 나타났습니다. 그래픽 카드는 일반적으로 Win7(NVIDIA OPTIMUS)로 설정되어 있으며 통합 그래픽 모드로 재설정했는데 더 이상 정지/오류가 발생하지 않습니다. 어떻게 하나요? Thinkpad를 다시 시작하고 F1 또는 파란색 Thinkvantage 버튼을 눌러 BIOS로 들어갑니다. 그래픽으로 이동하여 통합 그래픽을 선택한 다음 F10을 눌러 저장하고 종료합니다. 카드는 통합형, 개별형, NVIDIA OPTIMUS(Win7에만 해당?)의 3가지 설정으로 제공됩니다. 시간이 절약되길 바라시나요?

관련 정보