Re: [PATCH] vmx: Parse vm.genid

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 8/2/21 7:00 AM, Michal Prívozník wrote:
On 7/30/21 2:02 PM, Richard W.M. Jones wrote:
On Thu, Jul 29, 2021 at 10:30:30AM +0200, Michal Privoznik wrote:
The VMware metadata file contains genid but we are not parsing
and thus reporting it in domain XML. However, it's not as
straightforward as one might think. The UUID reported by VMware
is not in its usual string form, but split into two signed long
longs. That means, we have to do a bit of trickery when parsing.
But looking around it's the same magic that libguestfs does:

https://github.com/libguestfs/virt-v2v/blob/master/v2v/input_vmx.ml#L421

It's also explained by Rich on qemu-devel:

https://lists.nongnu.org/archive/html/qemu-devel/2018-07/msg02019.html

Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1598348
Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx>
---

I've successfully ran vmx2xmltest on an s390x machine which means that
there shouldn't be any endiandness problem.

  src/vmx/vmx.c                                 | 30 +++++++++++++++++++
  .../vmx2xml-esx-in-the-wild-10.xml            |  1 +
  2 files changed, 31 insertions(+)



Looked reasonable and seems to match the description here:

https://lists.nongnu.org/archive/html/qemu-devel/2018-07/msg02019.html

Reviewed-by: Richard W.M. Jones <rjones@xxxxxxxxxx>

Pushed, thanks.


Out of interest, what is this being consumed by?  I will add this to
virt-v2v when it goes upstream.

I don't recall all the specifics (it was John who implemented it), but
IIRC it was needed for Windows guests. Something about identifying them
uniquely. John?


Tugging at a memory strand that's 3+ years old results in a blank stare followed by some amount of panic ;-)

I do have vague recollections of issues w/ snapshots though - scanning the libvirt code for 'genid' or 'GEN_VMID' would seem to give some hints. There were some very specific options / processing.

I recall a few qemu patches after the initial implementation, but the specifics have long since been erased from the recall buffer. I do see Gal who is still at Red Hat did some reviews for the original implementation - whether he has any recollections.

John

Here's the commit that implemented it in libvirt:

https://gitlab.com/libvirt/libvirt/-/commit/b50efe97ad1357f9dff26450daf68a7a53201bea

Michal





[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux