Okay, so I'm trying to figure out why my KVM/QEMU installation on POWER9 hardware isn't working properly. The error messages mention something about Transactional Memory (TM) and suggest that the host kernel doesn't support it for guests, which means I should disable HTM using cap-htm=off. First, I need to understand what's happening here. From the comments, it seems that when trying to start a virtual machine with Virt-manager, QEMU is throwing an error about KVM not supporting Transactional Memory on the host. This causes the installation or VM start to fail. Looking at the logs provided, Satheesh mentioned that they had a chat with Suraj, who explained that Power9 doesn't support HTM in guests right now. So any guest VM should be started with cap-htm=off. There's also a mention of a host kernel patch being worked on, which would fix this issue eventually. Another point is that libvirt isn't handling cap-htm yet; it doesn't set any defaults. So when starting the VM through libvirt, it might not pass the necessary flags to QEMU unless configured to do so. I see that some machine types like pseries-2.12 disable HTM by default, while others don't. If the current setup uses a different machine type (like pseries-bionic), it might require manually setting cap-htm=off or switching to a newer machine type that does this by default. So, what steps can I take to resolve this issue? 1. **Check the Machine Type**: Determine which machine type my VM is using. If it's not pseries-2.12, maybe switching to that would help since HTM is off by default there. 2. **Modify Libvirt Configuration**: Since libvirt doesn't handle cap-htm yet, I might need to modify the VM's configuration in libvirt XML files to include the cap-htm=off argument when starting QEMU. 3. **Update Host Kernel**: If possible, apply the patch mentioned (https://www.spinics.net/lists/kvm-ppc/msg13378.html) to enable HTM support for guests on Power9. But this might be a future fix, not immediately available. 4. **Pass cap-htm=off in CLI**: Alternatively, start the VM manually using the QEMU command line with cap-htm=off until libvirt is updated. I should also check if my current setup already uses pseries-2.12 or another machine type that supports disabling HTM by default. If not, changing the machine type might be necessary as an intermediate fix. Another thought: Perhaps Canonical needs to update their defaults for VMs so that by default, when using certain machine types on POWER9 hardware, cap-htm is set appropriately. Until then, manual configuration or applying patches might be required. In summary, the immediate fix seems to involve either changing the machine type to one where HTM is off by default (like pseries-2.12) or explicitly adding cap-htm=off to the QEMU command line when starting the VM through libvirt. To address the issue of KVM/QEMU installation failure on POWER9 hardware due to unsupported Transactional Memory (TM), follow these steps: ### Immediate Solutions: 1. **Check and Modify Machine Type:** - Ensure your virtual machine uses the `pseries-2.12` machine type, which disables HTM by default. - If using another machine type like `pseries-bionic`, modify it to `pseries-2.12`. 2. **Update Libvirt Configuration:** - Edit the VM's XML configuration in libvirt to include ``. - This ensures cap-htm is disabled when starting the VM. 3. **Start VM with QEMU CLI:** - Temporarily start the VM manually using the command line, including `cap-htm=off` until libvirt is updated: ```bash virsh --connect qemu:///system create --config /path/to/vm.xml \ --arg cap-htm=off ``` ### Future Considerations: - **Host Kernel Update:** Once the host kernel patch enabling HTM support for guests is available, update your kernel and re-enable cap-htm if needed. - **Libvirt Update:** Monitor updates to libvirt that may automatically handle cap-htm settings based on hardware capabilities. By implementing these steps, you should resolve the installation failure due to unsupported TM and successfully run your VM on POWER9 hardware.