KVM virsh inject-nmi on Windows 2016 Japanese VM

albenalt

New Member
I hope someone can help.

I am trying to create a MEMORY.DMP on my Windows 2016 Japanese VM.
I tried "virsh inject-nmi" and "virsh qemu-monitor-command" but none works.
Is there any other way to create MEMORY.DMP without actually hopping in the windows system itself?

"virsh inject-nmi" perfectly works though in Windows 2016 English VM but somehow, this does not works when converted to Japanese.
I tested on my test machine.

Is this a Windows bug or a KVM virsh bug?
 


JulienCC

Active Member
Hello,

That would be surprising if Windows handled NMI differently depending on regions.
Let me have a look at the way libvirt actually sends the interrupt.
 

JulienCC

Active Member
This is really hard to follow the execution path, way too many macros in the code if you ask me. Virsh is a libvirt tool that translates commands and pass them to qemu through a "monitor" but I can't find the implementation of QEMU_MONITOR_SEND_MSG.

I need to investigate further but its going to take some time.

Japanese are not known to use desktop hardware significantly different from US/EU. I would not except the Windows handling of NMI to be different in this version.

However QEMU has probably some checks and tricks when hosting a Windows OS and there's a chance that these tricks dont really handle japanese characters (or a meta info string specific to JP version).
My first guess would be an hardcoded string incompatible with JP region in QEMU.

Can you tell me how you switched the region of the OS ?
 

albenalt

New Member
Hi,

Thanks for picking up my query.

I dig more for information regarding this and it seems this bug was corrected by the upgrade version of seabios 1.10.1-1.el7 or later.

"virsh qemu-monitor-command" seems to be working on Japanese versions Windows 2016 Standard Japanese version but unfortunately it does not with For Windows 2016 DataCenter Japanese version.

***Can you tell me how you switched the region of the OS ?

I switched the OS by Start > Settings > Time & Language > Language

Changed the "Windows display language" to Japan.
+ Add a language
on the Language "options". Downloaded the "Language pack"
on the Language, clicked the "Set as default".

After logout and login, everything changed to Japanese.

I totally appreciates all the help.

Regards,
Alben
 

JulienCC

Active Member
Hello,

Thanks for the "ping". I didn't find yet, I've been quite busy, I'm going to investigate on seabios, there must some code with some kind of hardcoded strings. I know this is common for ACPI for example, with Linux pretending to be windows for the BIOS to enable some features...

Which version of qemu are you running ?
 

albenalt

New Member
Hi Julien,

Here is the qemu package installed.
qemu-kvm-1.5.3-126.el7_3.10.x86_64

Thanks again.

Regards,
Alben
 

Members online


Latest posts

Top