I don’t know if this is the appropriate place to report this issue, but it’s been going on for months now, ever since libvirt was upgraded to version 6.5.0-2.
When attempting to start a virtual machine that uses whole disk passthrough, I get the following error:
ditto:~% sudo virsh start meowth
error: Failed to start domain meowth
error: Unable to get devmapper targets for /dev/disk/by-id/nvme-Samsung_SSD_970_EVO_Plus_2TB_S59CNZFNA11845N-part1: Success
The disk is defined in the XML as:
<disk type='block' device='disk'>
<driver name='qemu' type='raw' cache='writeback' io='threads' discard='unmap'/>
<source dev='/dev/disk/by-id/nvme-Samsung_SSD_970_EVO_Plus_2TB_S59CNZFNA11845N-part1'/>
<backingStore/>
<target dev='sdc' bus='scsi'/>
<address type='drive' controller='0' bus='0' target='0' unit='2'/>
</disk>
This is a known issue with this version of libvirt, has persisted for a long time, and tbqh, I’m not sure why it’s still in the stable collection. The “fix” I’ve been using is to downgrade libvirt to 6.5.0-1 every time I issue a system update with:
pacman -U /var/cache/pacman/pkg/libvirt-6.5.0-1-x86_64.pkg.tar.zst
I’m really hoping this post gets some attention and this issue finally gets fixed.