NMI không rõ lý do 20 và 30 trên máy ảo


10

Tôi đã mở giao diện điều khiển trên một máy ảo mà tôi quản lý ngày hôm nay và được chào đón với một số tin nhắn kernel:

[5912557.130943] Uhhuh. NMI received for unknown reason 20 on CPU 0.
[5912557.131115] Do you have a strange power saving mode enabled?
[5912557.131287] Dazed and confused, but trying to continue
[6064281.393568] Uhhuh. NMI received for unknown reason 30 on CPU 1.
[6064281.393888] Do you have a strange power saving mode enabled?
[6064281.394235] Dazed and confused, but trying to continue

Đó chỉ là một vài trong số đó, cả 20 và 30 xảy ra trên CPU 0 và 1.

  • VM là Debian Jessie, BIOS boot ("QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.9.3-20161025_171302-gandalf 04/01/2014"; kernel 3.16.0-4-amd64)
  • Hypervisor là libvirt / KVM đang chạy thử nghiệm Debian (hiện tại là 4.7.0-1-amd64 của Debian; qemu 1: 2.7 + dfsg-3).
  • Phần cứng là Opteron 6344 trên Supermicro H8SGL-F với RAM ECC được kích hoạt chà.

Tôi không thấy bất kỳ thông báo lỗi / cảnh báo NMI hoặc EDAC nào trên máy chủ.

Có ai biết điều gì đang gây ra những tin nhắn NMI này cho khách không? Họ có gì phải lo lắng không?

(Có thể liên quan đến 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? Nhưng dường như đó là kim loại trần).


Tôi tự hỏi rằng nó sẽ giúp chuyển đến nhân của máy ảonoapic apci=off
Rui F Ribeiro

@RuiFRibeiro Vâng, hiện tại VM đang hoạt động mà không có bất kỳ vấn đề (rõ ràng) nào. Nó đang được sản xuất, vì vậy tôi không muốn đi xung quanh khởi động lại để thử các tùy chọn kernel ngẫu nhiên chỉ để xem. Sẽ là một câu chuyện khác nhau nếu nó là để giúp đỡ một hạt nhân dev để gỡ lỗi các vấn đề, vv (Thêm vào đó, nó không phải như họ đang thường xuyên-it'd mất một thời gian để đảm bảo.)
derobert

Tôi đã cố gắng theo dõi vấn đề tương tự trong một thời gian. Một số điểm dữ liệu có thể hữu ích là: phiên bản kernel của máy chủ, phiên bản qemu, cho dù VM sử dụng boot BIOS hay UEFI, cho dù VM sử dụng i440fx hay q35.
Michael Hampton

@MichaelHampton yêu cầu chi tiết thêm vào câu hỏi.
derobert

Tôi cũng gặp vấn đề tương tự, đây là chi tiết (thực tế rất giống nhau): VM là Debian jessie (3.16.0-4-amd64) với BIOS 1.7.5-20140531_083030-gandalf (04/01/2014). Hypervisor là libvirt / KVM trên Debian jessie, nhưng với kernel backported (4.7.0-0.bpo.1-amd64). Phần cứng của Hypervisor là hai Opteron 6272, với RAM ECC (bo mạch chủ hiện chưa rõ, nhưng có khả năng là một loại nào đó). Do các chi tiết này khá giống với derobert, tôi không quá ngạc nhiên khi tôi cũng gặp phải vấn đề này, nhưng hy vọng chúng sẽ giúp ích.
jvperrin

Câu trả lời:


2

Tôi gặp vấn đề tương tự khi sử dụng một thiết lập tương tự:

  1. CPU AMD (mặc dù tôi đã thấy các báo cáo về cùng một vấn đề với CPU Intel, nhưng không có trình ảo hóa nào của tôi chạy trên CPU Intel có vấn đề này, ngay cả khi CPU được kích hoạt thông qua).
  2. Debian, kernel 4.x trên máy ảo hóa và khách (4.9.0-4-amd64 trong trường hợp của tôi trên cả hai).

Giải pháp của tôi là chuyển VM khách của mình sang sử dụng CPU mô phỏng QEMU thay vì truyền qua CPU. Điều này đòi hỏi phải loại bỏ <cpu mode='host-passthrough'/>dòng khỏi tệp định nghĩa khách.

Cập nhật : Tôi đã điều tra thêm và các yếu tố rắc rối nằm dưới clockyếu tố:

<clock offset='utc'>
  <timer name='rtc' tickpolicy='catchup'/>
  <timer name='pit' tickpolicy='delay'/>
  <timer name='hpet' present='no'/>
</clock>

Giải pháp thực sự là loại bỏ ba <timer>yếu tố, sau đó <cpu mode='host-passthrough'/>có thể được kích hoạt lại.

Để hoàn thiện tôi đã thêm một câu trả lời tương tự cho câu hỏi được liên kết .


Ba yếu tố này là các giá trị mặc định, vô hiệu hóa chúng sẽ không làm gì chính xác và thêm lại chúng khi lưu.
Simon Richter

1

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).


0

Tôi đã có cùng một vấn đề trên Debian 9Qemu 2.8.1(Debian 1:2.8+dfsg-6+deb9u5).
Tôi đã giải quyết nó bằng cách thay thế mô hình videocard từ virtiosang cirrus(hoặc bạn có thể thử sử dụng một mô hình khác từ qemutrang man).

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.