Project

General

Profile

Actions

action #47201

closed

[openqa] why do we create qcow backed files for isos?

Added by okurz about 5 years ago. Updated about 5 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Regressions/Crashes
Target version:
-
Start date:
2019-02-06
Due date:
% Done:

0%

Estimated time:

Description

See https://openqa.opensuse.org/tests/847991/file/autoinst-log.txt :

[2019-02-06T10:08:33.361 CET] [debug] running /usr/bin/qemu-img create -f qcow2 -b /var/lib/openqa/pool/11/openSUSE_Krypton.x86_64-5.12.80-Build5.25.iso /var/lib/openqa/pool/11/raid/cd0-overlay0 1011875840
[2019-02-06T10:08:33.370 CET] [debug] Formatting '/var/lib/openqa/pool/11/raid/cd0-overlay0', fmt=qcow2 size=1011875840 backing_file=/var/lib/openqa/pool/11/openSUSE_Krypton.x86_64-5.12.80-Build5.25.iso cluster_size=65536 lazy_refcounts=off refcount_bits=16

[2019-02-06T10:08:33.371 CET] [debug] starting: /usr/bin/qemu-system-x86_64 -vga cirrus -only-migratable -chardev ringbuf,id=serial0,logfile=serial0,logappend=on -serial chardev:serial0 -soundhw ac97 -global isa-fdc.driveA= -m 2048 -cpu qemu64 -netdev user,id=qanet0 -device virtio-net,netdev=qanet0,mac=52:54:00:12:34:56 -boot once=d,menu=on,splash-time=5000 -device usb-ehci -device usb-tablet -smp 1 -enable-kvm -no-shutdown -vnc :101,share=force-shared -device virtio-serial -chardev socket,path=virtio_console,server,nowait,id=virtio_console,logfile=virtio_console.log,logappend=on -device virtconsole,chardev=virtio_console,name=org.openqa.console.virtio_console -chardev socket,path=qmp_socket,server,nowait,id=qmp_socket,logfile=qmp_socket.log,logappend=on -qmp chardev:qmp_socket -S -device virtio-scsi-pci,id=scsi0 -blockdev driver=file,node-name=hd0-file,filename=/var/lib/openqa/pool/11/raid/hd0,cache.no-flush=on -blockdev driver=qcow2,node-name=hd0,file=hd0-file,cache.no-flush=on -device virtio-blk,id=hd0-device,drive=hd0,serial=hd0 -blockdev driver=file,node-name=cd0-overlay0-file,filename=/var/lib/openqa/pool/11/raid/cd0-overlay0,cache.no-flush=on -blockdev driver=qcow2,node-name=cd0-overlay0,file=cd0-overlay0-file,cache.no-flush=on -device scsi-cd,id=cd0-device,drive=cd0-overlay0,serial=cd0

Problem

I do not see the sense in that and I wonder if this is a regression.

Actions #1

Updated by okurz about 5 years ago

  • Assignee set to rpalethorpe

could you please help to check if this is maybe something you know about?

Actions #2

Updated by rpalethorpe about 5 years ago

  • Status changed from New to In Progress

I don't remember exactly, but there are a few possible reasons:

1) It makes the code simpler if all block devices use overlays
2) It allows for writable CD/DVD drive devices (I don't know if anyone cares, but it is not over-engineering because of (1))
3) It stops permission issues as without an overlay QEMU may try to open the file as read-write depending on what type of device you define and QEMU should not have write access to ISOs.

You can try changing it if you want, but I think it is over optimisation and it will make the system more fragile. I know that the QEMU command line is now ridicules, but this is how we get the most exact behaviour out of QEMU. Maybe we could just put some line breaks in the command line and print some explanation of the block-device overlay tree being used. Assuming that is the root problem?

Actions #3

Updated by rpalethorpe about 5 years ago

  • Subject changed from why do we create qcow backed files for isos? to [openqa] why do we create qcow backed files for isos?
Actions #4

Updated by okurz about 5 years ago

  • Status changed from In Progress to Resolved

well, if this is by design then I'm good :) Thx

Actions

Also available in: Atom PDF