On Thu, Oct 15, 2020 at 12:36:08 +0200, daggs wrote: > Greetings Peter, > > > Sent: Thursday, October 15, 2020 at 9:52 AM > > From: "Peter Krempa" <pkrempa@xxxxxxxxxx> > > To: "daggs" <daggs@xxxxxxx> > > Cc: "libvirt-usersredhat.com" <libvirt-users@xxxxxxxxxx> > > Subject: Re: scsi passthrough differs between guests > > > > I don't see anything wrong with you configs. There were some changes > > related to SCSI hostdevs, between 6.7.0 an 6.8.0, but none of them > > should actually impact that use case. > > > > Said that, could you please post the actual qemu command lines that > > libvirt formatted for the two VMs you mention above. > > > > The command line can be found in /var/log/libvirt/qemu/$VMNAME.log . > > Please make sure you post the latest/actual one. It'll help showing > > whether anything changed between the two or there is a different > > problem. > > > > here is the good cmd: > /usr/bin/qemu-system-x86_64 \ [...] > -drive file=/dev/sg5,if=none,format=raw,id=drive-hostdev0,readonly=on \ > -device scsi-generic,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=drive-hostdev0,id=hostdev0 \ [...] > the bad one: > /usr/bin/qemu-system-x86_64 \ [...] > -blockdev '{"driver":"host_device","filename":"/dev/sg0","node-name":"libvirt-hostdev0-backend","read-only":true}' \ > -device scsi-generic,bus=scsi0.0,channel=0,scsi-id=0,lun=0,drive=libvirt-hostdev0-backend,id=hostdev0 \ This doesn't corelate with the version numbers you've mentioned, because the "new" syntax which uses -blockdev was present both in 6.7.0 and 6.8.0. Anyways the problem is almost certainly that the hostdev code doesn't detect that it's a cdrom. We have such a hack in the disk code which turns a 'host_device' into a 'host_cdrom'. I'll try fixing it but I don't have a machine with a cdrom handy, so it would be nice if you could test it afterwards. Thanks for the report.