On Thu, Mar 04, 2021 at 05:52:50PM +0100, Peter Krempa wrote: > On Thu, Mar 04, 2021 at 17:23:05 +0100, Markus Armbruster wrote: > > Daniel P. Berrangé <berrange@xxxxxxxxxx> writes: > > > > > On Thu, Mar 04, 2021 at 03:26:55PM +0100, Markus Armbruster wrote: > > >> Daniel P. Berrangé <berrange@xxxxxxxxxx> writes: > > >> > > >> > On Thu, Mar 04, 2021 at 11:00:57AM +0100, Markus Armbruster wrote: > > >> >> Drop the crap deprecated in commit 4a27a638e7 "fdc: Deprecate > > >> >> configuring floppies with -global isa-fdc" (v5.1.0). > > >> >> > > >> >> Signed-off-by: Markus Armbruster <armbru@xxxxxxxxxx> > > >> >> --- > > >> >> docs/system/deprecated.rst | 26 -- > > >> >> docs/system/removed-features.rst | 26 ++ > > >> >> hw/block/fdc.c | 54 +-- > > >> >> tests/qemu-iotests/172 | 31 +- > > >> >> tests/qemu-iotests/172.out | 562 +------------------------------ > > >> >> 5 files changed, 30 insertions(+), 669 deletions(-) > > [...] > > > >> > > >> Correct. > > >> > > >> This was deprecated in commit 4a27a638e7 "fdc: Deprecate configuring > > >> floppies with -global isa-fdc" (v5.1.0). Since then, its use triggers a > > >> warning: > > >> > > >> $ qemu-system-x86_64 -nodefaults -M q35 -display none -drive if=none,id=drive-fdc0-0-0 -device isa-fdc,driveA=drive-fdc0-0-0,bootindexA=1 > > >> qemu-system-x86_64: -device isa-fdc,driveA=drive-fdc0-0-0,bootindexA=1: warning: warning: property isa-fdc.driveA is deprecated > > >> Use -device floppy,unit=0,drive=... instead. > > >> > > >> Note the -M q35. Needed because the default machine type has an onboard > > >> isa-fdc, which cannot be configured this way. > > >> > > >> Sadly, the commit's update of docs/system/deprecated.rst neglects to > > >> cover this use. Looks the series overtaxed my capacity to juggle > > >> details; my apologies. > > >> > > >> Is libvirt still using these properties? > > > > > > Unfortunately yes, but it seems like it ought to be fairly easy to > > > change the syntax. Just need to figure out what the right way to > > > detect the availability of the new syntax is. Presumably just look > > > for existance of the 'floppy' device type ? > > > > Yes. The device type was added in merge commit fd209e4a7, v2.8.0. > > > > > Can you confirm that switching from -global to the new -device floppy > > > does /not/ have any live migration impact ? > > > > Yes, it must not affect migration. > > > > When Kevin split the floppy device type off the floppy controller, he > > had to add some moderately ugly hackery to keep the old qdev properties > > working. Think propagate property values to floppy from controller, > > which otherwise ignores them. > > > > The way you get the values into the floppy device cannot affect the > > migration data. Only different values can. > > > > This patch removes a deprecated way. > > Note that when QEMU_CAPS_BLOCKDEV is asserted we format floppies as: > > -blockdev '{"driver":"file","filename":"/tmp/firmware.img",\ > "node-name":"libvirt-2-storage","auto-read-only":true,"discard":"unmap"}' \ > -blockdev '{"node-name":"libvirt-2-format","read-only":false,"driver":"raw",\ > "file":"libvirt-2-storage"}' \ > -device floppy,unit=0,drive=libvirt-2-format,id=fdc0-0-0 \ > -blockdev '{"driver":"file","filename":"/tmp/data.img",\ > "node-name":"libvirt-1-storage","auto-read-only":true,"discard":"unmap"}' \ > -blockdev '{"node-name":"libvirt-1-format","read-only":false,"driver":"qcow2",\ > "file":"libvirt-1-storage"}' \ > -device floppy,unit=1,drive=libvirt-1-format,id=fdc0-0-1 \ > > as visible in the test file: > > tests/qemuxml2argvdata/disk-floppy-q35-2_11.x86_64-latest.args > > So libvirt should be in the clear. isa-fdc with driveA/driveB is > formatted only when the blockdev capability isn't present. Ahh, excellant, I missed that detailed and worried that we still had work todo. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|