¿Necesito un microcódigo de CPU (o cualquier otro) en una máquina virtual QEMU/KVM?

¿Necesito un microcódigo de CPU (o cualquier otro) en una máquina virtual QEMU/KVM?

Una CPU en una máquina virtual es solo virtual, por lo que supongo que no es necesario cargar el microcódigo del fabricante. Probablemente lo mismo sea válido para las GPU.

¿Es esto correcto? ¿Existe algún riesgo o desventaja de usarlo o no en una VM KVM/QEMU?

Me refiero a la actualización del microcódigo que se realiza al principio del proceso de arranque de la máquina virtual Linux.

Tanto las CPU del host como de la VM son iguales. El host carga el microcódigo más reciente al iniciar.

Se agradecería una respuesta con referencias, ya que yo mismo ya he hecho una suposición fundamentada.

Respuesta1

No estoy seguro de que haya una referencia en la documentación, pero Paolo Bonzini (el mantenedor de KVM) dijo estoen la qemu-devellista de correo:

El invitado no tiene un microcódigo propio, pero es necesario actualizar el microcódigo en el host. También necesitas actualizar el kernel, QEMU y libvirt si lo estás usando.

y luego,específicamente con respecto a la actualización del microcódigo dentro del huésped,

No, eso no tiene ningún efecto.

Respuesta2

La CPU no se visualiza. Bueno, no mucho. Pues mucho. Bueno, depende de tu punto de vista. En modo de usuario, solo usa la CPU del host. En modo kernel se puede emular o visualizar (según el modelo de CPU del software de virtualización, etc.). Como utiliza la CPU del host, el host necesita actualizar el microcódigo.

Espero que el huésped no tenga acceso a esto. Quizás le digan que no puede hacerlo. O tal vez se diga que lo logró. Pero no se debe permitir cambiarlo, ya que esto afectaría al anfitrión y a otros invitados.

información relacionada