Setextradata HOSTCPUID CPUM not working?

Discussions about using Windows guests in VirtualBox.
Post Reply
FlatChad
Posts: 1
Joined: 14. Apr 2016, 08:18

Setextradata HOSTCPUID CPUM not working?

Post by FlatChad »

I have a Windows 7 x86 Guest that is powered off. I run:

Code: Select all

vboxmanage setextradata "Win7-x86-SP1" VBoxInternal/CPUM/HostCPUID/00000001/eax 0x000506E3
vboxmanage setextradata "Win7-x86-SP1" VBoxInternal/CPUM/HostCPUID/00000001/ebx 0x00040800
vboxmanage setextradata "Win7-x86-SP1" VBoxInternal/CPUM/HostCPUID/00000001/ecx 0x1ED82203
vboxmanage setextradata "Win7-x86-SP1" VBoxInternal/CPUM/HostCPUID/00000001/edx 0x178BFBBF
I can see the changes have all been applied successfully by viewing the .vbox file.

I start the VM, and immediately the .vbox is modified, removing the 4 settings I just applied.

As a result, the CPUID instruction does not return these values when executed.

What am I doing wrong?
Attachments
vbox.log
(109.11 KiB) Downloaded 126 times
michaln
Oracle Corporation
Posts: 2973
Joined: 19. Dec 2007, 15:45
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Any and all
Contact:

Re: Setextradata HOSTCPUID CPUM not working?

Post by michaln »

FlatChad wrote:What am I doing wrong?
You're using an undocumented internal interface. Why are you doing that, anyway?

Use 'VBoxManage modifyvm <vmname> -- cpuidset <leaf> <eax> <ebx> <ecx> <edx>' instead.
brunis
Posts: 1
Joined: 4. Dec 2017, 15:01

Re: Setextradata HOSTCPUID CPUM not working?

Post by brunis »

Amazing, love how this official interface breaks my vm's. At least the undocumented one didn't.

Any idea how to unbreak my vm's if i tried any of the cpuid's on the list?

--cpuidremoveall has no effect.. or maybe that's because it's entires wiped now?
socratis
Site Moderator
Posts: 27329
Joined: 22. Oct 2010, 11:03
Primary OS: Mac OS X other
VBox Version: PUEL
Guest OSses: Win(*>98), Linux*, OSX>10.5
Location: Greece

Re: Setextradata HOSTCPUID CPUM not working?

Post by socratis »

I thought that repeating the command with no arguments:
  • VBoxManage modifyvm <vmname> --cpuidset
would work, alas it doesn't. So the only way I can think of is to quit VirtualBox and make sure that there are no VirtualBox processes running (VBox*, VM*). Another way would be to reboot your host and avoid launching VirtualBox.

You then edit the .vbox file of the affected machine and you delete three lines:
<CpuIdTree>
  <CpuIdLeaf id="1" eax="198313" ebx="1050624" ecx="2140857279" edx="126614527"/>
</CpuIdTree>
The e*x numbers may be different in your case.
Do NOT send me Personal Messages (PMs) for troubleshooting, they are simply deleted.
Do NOT reply with the "QUOTE" button, please use the "POST REPLY", at the bottom of the form.
If you obfuscate any information requested, I will obfuscate my response. These are virtual UUIDs, not real ones.
michaln
Oracle Corporation
Posts: 2973
Joined: 19. Dec 2007, 15:45
Primary OS: MS Windows 7
VBox Version: PUEL
Guest OSses: Any and all
Contact:

Re: Setextradata HOSTCPUID CPUM not working?

Post by michaln »

What *exactly* is the problem, and what are you trying to solve by modifying the CPUID? Chances are you're doing something wrong/unnecessary. Without knowing the details, the general advice is "don't do this".
Post Reply