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(a)redhat.com> writes:
>
> > On Thu, Mar 04, 2021 at 03:26:55PM +0100, Markus Armbruster wrote:
> >> Daniel P. Berrangé <berrange(a)redhat.com> 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(a)redhat.com>
> >> >> ---
> >> >> 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 :|