Extradata on Raw Hypervisor CPUID Leaves
Posted: 25. Jul 2016, 16:12
Hello,
I need to change the "hypervisor vendor" value seen by a Windows 7 guest on a VBox 5.0.26.
More exactly the value VboxVboxVbox from CPUID infos as Pafish gets it (github - a0rtega/pafish),
or as we can get with the VBoxManage command :
`--> VBoxManage debugvm 'test-VM' info cpuid
[...]
Raw Hypervisor CPUID Leaves
Leaf/sub-leaf eax ebx ecx edx
Gst: 40000000/0000 40000001 786f4256 786f4256 786f4256
Hst: 07280202 00000000 00000000 00000503
Gst: 40000001/0000 656e6f6e 00000000 00000000 00000000
Hst: 07280202 00000000 00000000 00000503
[...]
Where 786f4256 786f4256 786f4256 is xobVxobVxobV in hexadecimal (or VboxVboxVbox)
I was already able to change some CPUID values with these :
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/00000000/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000000/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000002/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000003/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000004/${register} 0x${value}
So I thougth that :
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/ebx 0xdeadbeef
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/ecx 0xdeadbeef
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/edx 0xdeadbeef
would do the trick, but no.
I'm stuck here, I'm pretty sure there is a way to set this register but can't find how.
Does someone have any idea ?
Thanks in advance.
I need to change the "hypervisor vendor" value seen by a Windows 7 guest on a VBox 5.0.26.
More exactly the value VboxVboxVbox from CPUID infos as Pafish gets it (github - a0rtega/pafish),
or as we can get with the VBoxManage command :
`--> VBoxManage debugvm 'test-VM' info cpuid
[...]
Raw Hypervisor CPUID Leaves
Leaf/sub-leaf eax ebx ecx edx
Gst: 40000000/0000 40000001 786f4256 786f4256 786f4256
Hst: 07280202 00000000 00000000 00000503
Gst: 40000001/0000 656e6f6e 00000000 00000000 00000000
Hst: 07280202 00000000 00000000 00000503
[...]
Where 786f4256 786f4256 786f4256 is xobVxobVxobV in hexadecimal (or VboxVboxVbox)
I was already able to change some CPUID values with these :
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/00000000/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000000/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000002/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000003/${register} 0x${value}
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/80000004/${register} 0x${value}
So I thougth that :
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/ebx 0xdeadbeef
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/ecx 0xdeadbeef
> vboxmanage setextradata "$vm" VBoxInternal/CPUM/HostCPUID/40000000/edx 0xdeadbeef
would do the trick, but no.
I'm stuck here, I'm pretty sure there is a way to set this register but can't find how.
Does someone have any idea ?
Thanks in advance.