BUG : 소프트 잠금-x 초 동안 CPU #가 멈춤


33

잔소리와 관련된 몇 가지 버그 보고서와 질문 (스택 교환 및 기타 장소)을 보았습니다 "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 개 "코어"에 상당히 잘 분산되어있는 것 같습니다.

호스트는 "EC2 CentOS 5.5 GPU HVM AMI (드라이버 260.19.29) (ami-42a2532b)"라는 AMI를 가진 AWS EC2 "cc1.4xlarge"인스턴스입니다. Xen으로 가상화 된 것 같습니다.

cat /etc/redhat-release수율 CentOS release 5.9 (Final). 'free'RAM의 21G를보고합니다.

의 머리 dmesg는 :

Linux version 2.6.18-348.3.1.el5 (mockbuild@builder10.centos.org) (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
가능한 이유의 톤. KVM 인스턴스에서 한 번 사용했습니다. 그 원인은 호스트 네트워크 드라이버 (realtek)였습니다. 가상화가 예상하지 못한 높은 네트워크로드에서 무언가를 수행 할 수 있습니다. 기본적으로 네트워크 드라이버의 버그로 인해 다른 버그가 발생했습니다. 해결책은 특정 행동을 유발하지 않는 다른 커널 버전 (호스트에서)으로 전환하는 것이 었습니다.
frostschutz

1
일부 VM에는 새 서버의 물리적 CPU보다 더 많은 vcpus가 구성되어 있기 때문에이 오류 메시지가 나타납니다. Xen 호스트를 옮겼습니다.
Jörg Ludwig

답변:


11

또한 3.6 및 3.8 커널 (AlpineLinux)이있는 Xen 4.2 에서이 문제가 있습니다.

나는 googled하고 clocksource = jiffies를 커널에 추가하여 수정했습니다. 지프 대신 "피트"를 시도 할 수도 있습니다.

BIOS에서 C- 상태 비활성화에 대한 보고서도 있습니다 .


4
이 커널 매개 변수는 무엇을합니까?
Burhan Ali

2
클럭 소스는 나에게 명백한 것으로 보이고 c- 상태는 CPU의 전원 상태입니다.
프란츠 베타 그

+1. c 상태를 비활성화하면 나를 위해 일했습니다.
앤드류 Ensley

2

Thinkpad T520에서도 같은 문제가있었습니다. 그러나 커널을 해킹하는 대신 더 간단한 것을했습니다. 우선 Centos7을 사용하고 있습니다. 기본 시스템을 모두 설치했습니다. 그런 다음 나중에 그놈 GUI를 추가했는데 위에서 언급 한 문제가 발생하기 시작했습니다. 많은 제조업체에서 Windows 설치를 설정했습니다. 그래픽 카드는 일반적으로 Win7 (NVIDIA OPTIMUS)에 대해 설정됩니다. 통합 그래픽 모드로 재설정하고 더 이상 정지 / 오류가 발생하지 않습니다. 어떻게합니까? Thinkpad hit F1 또는 blue thinkvantage 버튼을 재부팅하여 BIOS로 들어갑니다. 그래픽으로 이동하여 통합 그래픽을 선택한 다음 F10을 선택하여 저장하고 종료하십시오. 이 카드에는 3 가지 설정이 있습니다 : 통합, 이산 및 NVIDIA OPTIMUS (Win7 만?) 시간이 절약되기를 바랍니다.


한숨, 대부분의 다른 모든 것들과 마찬가지로 물건을 별도로 설치하는 것은 결코 아닙니다. Office 및 기타 쓰레기와 함께 부풀린 데스크탑 버전으로 돌아 가기 :(
killjoy
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.