[alsa-devel] snd_intel8x0_inside_vm()

Takashi Iwai tiwai at suse.de
Wed Feb 19 08:09:29 CET 2014


At Tue, 18 Feb 2014 19:48:11 -0800,
H. Peter Anvin wrote:
> 
> I just stumbled upon the function snd_intel8x0_inside_vm(), and quite
> frankly the code seems bizarre:
> 
>         /* detect KVM and Parallels virtual environments */
>         result = kvm_para_available();
> #ifdef X86_FEATURE_HYPERVISOR
>         result = result || boot_cpu_has(X86_FEATURE_HYPERVISOR);
> #endif
>         if (!result)
>                 goto fini;
> 
> Why don't we simply rely on the PCI SSIDs?

The original code checking kvm_para_available() and boot_cpu_has() was
supposed to work for also VirtualBox and VMware.  The PCI SSID checks
have been introduced later, and looking at the code again, this might
have broken VirtualBox and VMware workaround.  Hmm. 

Besides that, the kvm_para_available() and boot_cpu_has() checks are
still left for avoiding unnecessary kernel message (enable/disable VM
workaround) on non-VM kernels.


Takashi


More information about the Alsa-devel mailing list