NMI nhận được không rõ lý do 20 - Bạn có bật chế độ tiết kiệm năng lượng lạ không?


8

Tôi đang sử dụng Debian GNU / Linux 7.8 (khò khè). Trong khi chạy chương trình MATLAB của tôi ngày hôm nay, tôi đã nhận được thông báo này trong thiết bị đầu cuối.

Message from syslogd@sas21 at Jul 18 16:40:49 ...
 kernel:[1747708.091929] Uhhuh. NMI received for unknown reason 20 on CPU 4.

Message from syslogd@sas21 at Jul 18 16:40:49 ...
 kernel:[1747708.091932] Do you have a strange power saving mode enabled?

Message from syslogd@sas21 at Jul 18 16:40:49 ...
 kernel:[1747708.091932] Dazed and confused, but trying to continue

Tôi cũng nhớ đã nghe thấy một số tiếng bíp ở giữa.

Điều đó có nghĩa là gì? Và tôi nên làm gì hơn nữa?


1
Tôi đã nhận được một mẹo hay để giải quyết vấn đề này: điều này dường như chỉ xuất hiện trên những khách đã khởi động lại kể từ lần khởi động VM cuối cùng, vì vậy rõ ràng một số trạng thái VM không được đặt lại đúng cách.
Simon Richter

Câu trả lời:


2

Đây là một Interupt không thể che dấu (NMI) và thường được kích hoạt bởi một sự kiện phần cứng trên hệ thống của bạn. Trong trường hợp này, có vẻ như NMI cụ thể không được định cấu hình và mặc dù nó đã nhận được NMI, nhưng nó không biết phải làm gì với nó, vì vậy nó chỉ bỏ qua nó.

Bạn nên làm gì thêm?

  • Nếu bạn chỉ muốn loại bỏ tin nhắn thì bạn có thể thử ẩn nó khỏi dòng lệnh bằng cách cấu hình syslogd.
  • Nếu bạn muốn khắc phục sự cố nền thì bạn cần phải xử lý những gì đã thay đổi trên máy (ví dụ: phần cứng / trình điều khiển mới được thêm vào?).

2

Vấn đề dường như là Sự kết thúc của ngắt không được truyền đạt đúng cách.

Đối với libvirt, đảm bảo eoiđược bật:

<domain>
  …
  <features>
    <apic eoi='on'/>
    …

Trên dòng lệnh cho KVM có nghĩa là

-cpu …,+kvm_pv_eoi

Điều này dường như hoạt động với chúng tôi -M q35, lưu trữ cpu thông qua và cấu hình mặc định nếu không (RTC ngắt hàng đợi, ngắt PIT, HPET không khả dụng).


Từ virt-install, cờ tương đương là --features eoi=on. Kiểm tra điều này trong môi trường của riêng tôi dường như không giải quyết nó.
BMitch

1

Tôi đã thấy hành vi này trên máy khách KVM chạy Debian 9.0 (Stretch) bằng loại phần cứng PC-Q35. Máy chủ lưu trữ là AMD Turion.

Một số giải pháp được đề xuất trực tuyến (xem, ví dụ, chủ đề này ), bao gồm các giải pháp sau đây

  1. Chuyển sang CPU mô phỏng QEMU thay vì sử dụng CPU thông qua.
  2. Thay đổi bộ đếm thời gian đồng hồ KVM (thêm <timer name='kvmclock' present='no'/>cho khách).
  3. Vô hiệu hóa hỗ trợ ACPI trong khách.

Trong trường hợp của tôi, việc chuyển sang CPU mô phỏng QEMU đã khắc phục vấn đề. Để làm như vậy, tôi đã xóa dòng sau khỏi tệp VM XML của mình:<cpu mode='host-passthrough'/>


1

Có thể CPU đang trở nên quá nóng và tạo ra một lỗi nhỏ hoặc làm hỏng một số hướng dẫn, nhưng những lỗi không nghiêm trọng này vẫn có thể được phục hồi bởi kernel bên trong.

Tôi đã nhận được tin nhắn tương tự, nhưng trong trường hợp của tôi, tôi biết rằng đó là GPU đang trở nên quá ấm. Những gì tôi đã làm là xem một đoạn livestream độ phân giải cao trên PC của tôi. Tôi tình cờ biết rằng GPU khá cũ và yếu, vì vậy điều này xuất hiện trong nhật ký lỗi của tôi:

Feb 15 10:39:14  kernel: [ 1708.477285] nouveau 0000:03:00.0: therm: temperature (86 C) went below the 'fanboost' threshold
Feb 15 10:39:16  kernel: [ 1710.452080] nouveau 0000:03:00.0: therm: temperature (90 C) hit the 'fanboost' threshold
Feb 15 10:39:21  kernel: [ 1714.926254] nouveau 0000:03:00.0: therm: temperature (86 C) went below the 'fanboost' threshold
Feb 15 10:39:23  kernel: [ 1717.261238] nouveau 0000:03:00.0: therm: temperature (90 C) hit the 'fanboost' threshold
Feb 15 10:39:23  kernel: [ 1717.535168] Uhhuh. NMI received for unknown reason 21 on CPU 0.
Feb 15 10:39:23  kernel: [ 1717.535172] Do you have a strange power saving mode enabled?
Feb 15 10:39:23  kernel: [ 1717.535173] Dazed and confused, but trying to continue
Feb 15 10:39:32  kernel: [ 1725.650454] nouveau 0000:03:00.0: therm: temperature (86 C) went below the 'fanboost' threshold
Feb 15 10:39:33  kernel: [ 1726.662936] nouveau 0000:03:00.0: therm: temperature (90 C) hit the 'fanboost' threshold
Feb 15 10:39:37  kernel: [ 1730.652335] nouveau 0000:03:00.0: therm: temperature (86 C) went below the 'fanboost' threshold

Và nhiều nhiều hơn nữa


1

Tôi gặp vấn đề tương tự sau vài ngày trên máy chủ KVM / QEMU của tôi chạy Debian 8.6 với kernel 3.16.0-4-amd64. Đây là một phần của nhật ký của tôi:

Jan 01 13:07:42 debbi3 kernel: Uhhuh. NMI received for unknown reason 20 on CPU 0.
Jan 01 13:07:42 debbi3 kernel: Do you have a strange power saving mode enabled?
Jan 01 13:07:42 debbi3 kernel: Dazed and confused, but trying to continue
Jan 02 10:48:58 debbi3 kernel: Uhhuh. NMI received for unknown reason 30 on CPU 0.
Jan 02 10:48:58 debbi3 kernel: Do you have a strange power saving mode enabled?
Jan 02 10:48:58 debbi3 kernel: Dazed and confused, but trying to continue

Điều này bắt đầu sau khi cài đặt BOINC (nhiệm vụ hiện tại là Collatz Conjecture). Tôi hiện đang cho phép BOINC lấy 99% CPU.

Vì vậy, tôi đoán nguyên nhân của những thông báo này là CPU đang bị bão hòa và không có đủ thời gian để xử lý các ngắt (phần cứng) đúng cách. Trong trường hợp cụ thể của bạn, một số quy trình khác hoặc nguyên nhân bên ngoài có thể là thủ phạm. YMMV.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.