Created attachment 1454624 [details] vmx-1-core.png Description of problem: V2V can't parse guest's cpu topology correctly after converting guest from VMX to libvirt when original guest has multiple sockets and 1 core Version-Release number of selected component (if applicable): virt-v2v-1.38.2-5.el7.x86_64 libguestfs-1.38.2-5.el7.x86_64 libvirt-4.4.0-2.el7.x86_64 qemu-kvm-rhev-2.12.0-4.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1.Convert guest from VMX to libvirt and make sure original guest has multiple sockets and 1 core in CPU topology # cat esx6.7-rhel7.5-x86_64/esx6.7-rhel7.5-x86_64.vmx .... numvcpus = "4" .... 2. Use virt-v2v to convert guest from vmx to libvirt , the conversion could be finished without error/warning # virt-v2v -i vmx esx6.7-rhel7.5-x86_64/esx6.7-rhel7.5-x86_64.vmx -on vmx-1-core -of qcow2 3. Check guest's xml after converting, v2v CAN NOT parse guest's cpu topology in libvirt xml correctly # virsh dumpxml vmx-1-core .... <vcpu placement='static'>4</vcpu> .... Actual results: As above description Expected results: V2V can parse guest's cpu topology correctly after converting guest from VMX to libvirt when originalguest has multiple sockets and 1 core Additional info: Actually, we can see guest cpu topology in virt-manager->cpu->topology,pls refer to screenshot "vmx-1-core". But the cpu topology is not enabled after v2v converting from VMX, so we can not see cpu topology in guest xml
This is a similar case of bug 1590079 -- basically, there is no information about the CPU topology in the vmx .file (other than the number of vCPUs).