VirtualBox

Opened 6 years ago

Last modified 14 months ago

#17696 new defect

Processor ID and MotherBord ID Missing

Reported by: Nicolas M Owned by:
Component: other Version: VirtualBox 5.2.8
Keywords: Cc:
Guest type: other Host type: Windows

Description

Hello,

We need some hardware information to do software licensing. In a Windows 10 VM, Processor ID and MotherBord ID cannot be requested.

These commands return default or empty values. wmic PATH Win32_Processor GET ProcessorId /VALUE wmic PATH Win32_BaseBoard GET SerialNumber /VALUE

My expectation :

  • When the VM is creator, random ProcessorId and MotherBordId are attributed.
  • When the VM is moves/dupplicated, ProcessorId and MotherBordId are randomly updated

Please tell me if you plan to resolve this ticket because similar tickets are quite old and were never treated.

Attachments (3)

VBox_ProcessorID.jpg (167.0 KB ) - added by AivarasL 4 years ago.
Change ProcessorID and other HardwareID
VBox_BIOS_BaseBoard.jpg (146.8 KB ) - added by AivarasL 4 years ago.
VBox_VideoController.jpg (217.5 KB ) - added by AivarasL 4 years ago.

Download all attachments as: .zip

Change History (13)

comment:1 by tuxbox, 6 years ago

Also hits me on 5.2.18. I cannot install Sivantos/Signia Hearing Aid Fitting Software Connexx as it depends on ProcessorID for unique identification.

comment:2 by EKuser, 5 years ago

Is this ticket being worked? This issue is also a show-stopper for me ... unable to use VirtualBox because it does not show the processor id in Windows 10. To prove this, open Windows PowerShell, and type: Get-WmiObject -Query "Select processorId from Win32_Processor"

It is empty. I have tried vboxmanage to add eax-edx registers, etc. The Windows Device Manager shows the CPU entered via vboxmanage, but the PowerShell command above does not.

I am running the Windows client virtualbox on a MacOSX host with Hyper-V paravirtualization enabled.

comment:3 by Klaus Espenlaub, 5 years ago

The docs were somewhat hard to find... this needs to be added to the DMI/SMBIOS table, and processorid is simply a copy of EAX:EDX of CPUID index 1. Nothing secret or sensitive. And certainly in no way unique. This needs to go into table type 4, which VirtualBox doesn't expose today at all (could be enabled, but then it contains just placeholders).

The serial number of the mainboard is already there, just happens to be always 0. As unique as the value on one of my systems, "System Serial Number".

It's tedious work (most effort is getting the correct data at an early point), and not that much demand it seems. As usual - patches welcome, this stuff lives in src/VBox/Devices/PC/DevFwCommon.cpp.

comment:4 by EKuser, 5 years ago

klaus said: " ... not that much demand it seems ..."

How much demand does it take to get a bug noticed? This bug was first reported NINE YEARS AGO, but it fell on deaf ears: https://www.virtualbox.org/ticket/5846

It was report AGAIN EIGHT YEARS AGO, but was once again ignored: https://www.virtualbox.org/ticket/9046

It was reported on this ticket ten months ago, and no one took it seriously. Then, when I ask if the ticket was being worked, the response is (as I heard it), "Meh, do it yourself ... DevFwCommon.cpp"

Guys, I love what you're doing, and I too am a software engineer. But how many years does it take to get a bug report noticed? Again, I'm very grateful for your hard work!

comment:5 by Socratis, 5 years ago

As an observer, not a VirtualBox developer, I can tell you one thing; age is completely irrelevant. Urgency is, and demand is, mainly from paying customers.

If we're not talking about lost data, it's not an urgent matter. If we're not talking about a crash, it's not an urgent matter. If we're talking about a marginal request from a handful of people among the hundreds and hundreds of thousands (if not millions) of users, then it's not an urgent matter.

There have been a lot more urgent matters that due to resource limitations have been delegated to the users. Case in point, there is call for help from the developers for end-users to pitch in helping with 3D acceleration on X11.

Now, you tell me what's more of a priority...

comment:6 by EKuser, 5 years ago

Well, at least you answered my original question, restated here for anyone else finding this bug report: Q: "Is this ticket being worked?" A: "Nope, and it never will be."

As I said before, this is a show-stopper for me, so--although I love VirtualBox--it's goodbye to VirtualBox, and back to VMware. [sigh]

in reply to:  6 comment:7 by Socratis, 5 years ago

Replying to EKuser:

Q: "Is this ticket being worked?"
A: "Nope, and it never will be."

I didn't say that at all. All I said is that I don't have a clue if it's worked or not! Please don't put words in my mout, and especially not definitive ones! If you want to check the status/update of the responsible source file, the "Timeline" is your friend.

VirtualBox is an open-source project, unlike the one that you are threatening us that you're going to move to. Here you have a chance at least to take your fortune in your hands, not so elsewhere. And that's all I said; if there are enough people interested in an obscure functionality/feature, then they may invest the time/money to see it done. If not personally, they can hire a competent developer...

comment:8 by tuxbox, 5 years ago

Just a sidetone that i also absolutely need this feature as my primary software in windows depends on it. So it's also a showstopper for me to currently not use virtual box.

by AivarasL, 4 years ago

Attachment: VBox_ProcessorID.jpg added

Change ProcessorID and other HardwareID

by AivarasL, 4 years ago

Attachment: VBox_BIOS_BaseBoard.jpg added

by AivarasL, 4 years ago

Attachment: VBox_VideoController.jpg added

comment:11 by LMaster, 3 years ago

+1, would be really helpful if Vbox team could implement the Processor ID.

comment:12 by Anton-V-K, 14 months ago

Actually with VirtualBox 6.1.42 you can change Motherboard Serial ID this way:

VBoxManage setextradata Win7x32 "VBoxInternal/Devices/pcbios/0/Config/DmiBoardSerial" "string:12345678"

where Win7x32 is the virtual machine name.

The prefix string: is needed to prevent handling ID as an integer (since it consists of digits).

Refer to https://www.virtualbox.org/manual/ch09.html#changedmi for more details.

Unfortunately there is no support for changing CPU ID - DmiProcSerial isn't handled.

Optionally you could expose your host CPU info (including ID) with DmiExposeProcInf this way:

VBoxManage setextradata Win7x32 "VBoxInternal/Devices/pcbios/0/Config/DmiExposeProcInf" "1"

After that VM CPU ID will be the same as your host CPU ID.

NOTE: all these changes should be applied when VM is powered off!

Last edited 14 months ago by Anton-V-K (previous) (diff)
Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use