Điểm:3

Nếu KVM đang hoạt động, tại sao VMX hiển thị là bị vô hiệu hóa?

lá cờ bq

Tôi đã bật VT-x trong BIOS. Tôi đang chạy qemu/kvm/Manjaro. lscpu nói

$ lscpu
Kiến trúc: x86_64
  Tên kiểu máy: CPU Intel(R) Core(TM) i7-8550U @ 1.80GHz
Cờ: ... vmx ... 
Các tính năng ảo hóa:
  Ảo hóa: VT-x
lỗ hổng:         
  Itlb multihit: KVM: Giảm nhẹ: VMX bị vô hiệu hóa

Thêm vao Đoa,

$ sudo rdmsr -f 2:0 0x3A
5

có nghĩa là

  • Cấu hình VMX bị khóa
  • VMX bị tắt ở trạng thái SMX (âSafer Mode Extensionsâ)
  • VMX được bật bên ngoài trạng thái SMX

câu trả lời này cho tôi hy vọng: nếu kvm tải, thì VMX đang hoạt động. Thực vậy, qemu với kvm vì máy gia tốc của nó hoạt động tốt (hoặc ít nhất là có vẻ như vậy). Vậy thì tại sao nó hiển thị VMX bị vô hiệu hóa vì mục đích của lỗ hổng multihit?

Một ví dụ qemu chạy:

$ qemu-system-x86_64 -nographic -vga none -net none -nodedefaults -machine q35 -accel kvm -cpu host -smp sockets=1,dies=1,cores=2,threads=2 -m 512M ...

Màn hình QEMU 6.0.0 - nhập 'trợ giúp' để biết thêm thông tin
(qemu) thông tin kvm
thông tin kvm
hỗ trợ kvm: đã bật

Khách (pfSense, trong trường hợp này) đang chạy tốt cho đến nay.

lá cờ in
Phản hồi ban đầu của tôi là có sự khác biệt giữa VT-d và VT-x nhưng từ những gì bạn tìm thấy và từ những gì tôi thu thập được thì có thể không phải như vậy. https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/multihit.html Nhưng tôi vẫn sẽ nói rằng KVM hoạt động với VT-d, VT-x là không cần thiết. nhưng kiểm tra lại dmesg?
lá cờ bq
@NiKiZe VT-d và VT-x chắc chắn là khác nhau; nhưng ở đây tôi đã cố gắng tập trung vào VT-x. VT-d phát huy tác dụng ở đâu?
Michael Hampton avatar
lá cờ cz
Bạn gần như chắc chắn sẽ cần chuyển câu hỏi này đến các nhà phát triển.
lá cờ in
Quả thực có vẻ như vậy. sẽ xóa thông tin không chính xác. dmesg nói gì và việc cố gắng chạy máy hỗ trợ KVM mang lại cho bạn điều gì, ví dụ: `qemu-system-x86_64 -enable-kvm -M q35 -m 1024 -cpu host`?
lá cờ bq
@NiKiZe Tôi đã chỉnh sửa để hiển thị một số thông tin về một ví dụ chạy qemu. Bạn đang tìm kiếm cụ thể gì trong dmesg; và bạn quan tâm đến chủ nhà hay khách?
lá cờ br
đơn giản hóa: VT-x là hỗ trợ cho lớp thứ hai của bảng trang trong MMU được gắn với CPU và VT-d là hỗ trợ cho bảng trang trong MMU được gắn với tổ hợp gốc PCIe. Bạn cần cái sau để truyền các thiết bị xuống máy ảo một cách minh bạch, vì chúng lập trình các địa chỉ vật lý của khách vào các thiết bị có khả năng DMA và những địa chỉ này cần được dịch trong các hoạt động của DMA.
lá cờ cn
Tôi chỉ muốn nói rằng tôi đang thấy điều tương tự xảy ra với CPU Skylake và Fedora Linux. Tất cả ảo hóa phần cứng được bật trong BIOS, nhưng `lscpu` tuyên bố "Lỗ hổng Itlb multihit: KVM: Mitigation: VMX bị vô hiệu hóa". Rất bối rối. Tôi tự hỏi nếu đó là một lỗi kernel?

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.