Project

General

Profile

action #112403

coordination #111860: [epic] Upgrade all our infrastructure, e.g. o3+osd workers+webui and production workloads, to openSUSE Leap 15.4

18-qemu-options.t fails on Leap 15.4 and Tumbleweed size:M

Added by tinita 2 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
Concrete Bugs
Target version:
Start date:
2022-06-14
Due date:
% Done:

0%

Estimated time:
Difficulty:

Description

18-qemu-options.t fails on Leap 15.4 and Tumbleweed

Observation

I upgraded to openSUSE Leap 15.4 and 18-qemu-options.t fails now because Supported machines are: is printed unexpectedly:

% prove -I . t/18-qemu-options.t
...
    not ok 12 - Supported machines not listed                                                                      
    #   Failed test 'Supported machines not listed'                                                                
    #   at t/18-qemu-options.t line 78.                                                                            
    #                   '[2022-06-14T13:59:46.871289+02:00] [debug] Current version is 3bac58535711dc10627407ea89b47a75a4651f19 [interface v26]
    # [2022-06-14T13:59:46.873305+02:00] [debug] Setting forced test parameter QEMU_DISABLE_SNAPSHOTS -> 1                                                                                                                            
    # [2022-06-14T13:59:46.877910+02:00] [debug] git hash in /home/tina/openqa-devel/repos/os-autoinst/t/data/tests: 3bac58535711dc10627407ea89b47a75a4651f19
    # [2022-06-14T13:59:46.878126+02:00] [info] ::: OpenQA::Isotovideo::Utils::load_test_schedule: Enforced test schedule by 'SCHEDULE' variable in action
    # [2022-06-14T13:59:46.883702+02:00] [debug] scheduling noop tests/noop.pm                                                                                                                                                        
    # [2022-06-14T13:59:46.932403+02:00] [info] cmdsrv: daemon reachable under http://*:15223/ZkmLYtjioL/                                                                                                                             
    # [2022-06-14T13:59:46.933811+02:00] [info] Listening at "http://[::]:15223"                                                                                                                                                      
    # Web application available at http://[::]:15223                                                               
    # [2022-06-14T13:59:46.934949+02:00] [debug] git hash in /home/tina/openqa-devel/repos/os-autoinst/t/data/tests/needles: 3bac58535711dc10627407ea89b47a75a4651f19
    # [2022-06-14T13:59:46.935067+02:00] [debug] init needles from /home/tina/openqa-devel/repos/os-autoinst/t/data/tests/needles
    # [2022-06-14T13:59:46.936072+02:00] [debug] loaded 4 needles                                                                                                                                                                     
    # [2022-06-14T13:59:47.078904+02:00] [debug] 25964: channel_out 15, channel_in 14                                                                                                                                                 
    # [2022-06-14T13:59:47.097897+02:00] [debug] 25987: cmdpipe 13, rsppipe 16                                                                                                                                                        
    # [2022-06-14T13:59:47.098039+02:00] [debug] started mgmt loop with pid 25987                                                                                                                                                     
    # [2022-06-14T13:59:47.126120+02:00] [debug] qemu version detected: 6.2.0                                                                                                                                                         
    # [2022-06-14T13:59:47.127022+02:00] [debug] running `/usr/bin/chattr +C /tmp/18-qemu-options.t-p8x3/pool/raid`                                                                                                                   
    # [2022-06-14T13:59:47.135217+02:00] [debug] Command `/usr/bin/chattr +C /tmp/18-qemu-options.t-p8x3/pool/raid` terminated with 0
    # [2022-06-14T13:59:47.135314+02:00] [debug] Configuring storage controllers and block devices                                                                                                                                    
    # [2022-06-14T13:59:47.135903+02:00] [debug] Initializing block device images                                                                                                                                                     
    # [2022-06-14T13:59:47.136164+02:00] [debug] running `/usr/bin/qemu-img create -f qcow2 /tmp/18-qemu-options.t-p8x3/pool/raid/hd0 10G`
    # [2022-06-14T13:59:47.156828+02:00] [debug] Formatting '/tmp/18-qemu-options.t-p8x3/pool/raid/hd0', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=10737418240 lazy_refcounts=off refcount_bits=16
    # [2022-06-14T13:59:47.156953+02:00] [debug] init_blockdev_images: Finished creating block devices                                                                                                                                
    # [2022-06-14T13:59:47.158264+02:00] [debug] starting: /usr/bin/qemu-system-i386 -chardev ringbuf,id=serial0,logfile=serial0,logappend=on -serial chardev:serial0 -audiodev none,id=snd0 -device intel-hda -device hda-output,audi
odev=snd0 -global isa-fdc.fdtypeA=none -m 1024 -netdev user,id=qanet0 -device virtio-net,netdev=qanet0,mac=52:54:00:12:34:56 -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0 -boot once=d -device qem
u-xhci -device usb-tablet -smp 1 -enable-kvm -no-shutdown -vnc :90,share=force-shared -device virtio-serial -chardev pipe,id=virtio_console,path=virtio_console,logfile=virtio_console.log,logappend=on -device virtconsole,chardev=vi
rtio_console,name=org.openqa.console.virtio_console -chardev pipe,id=virtio_console1,path=virtio_console1,logfile=virtio_console1.log,logappend=on -device virtconsole,chardev=virtio_console1,name=org.openqa.console.virtio_console1
 -chardev socket,path=qmp_socket,server=on,wait=off,id=qmp_socket,logfile=qmp_socket.log,logappend=on -qmp chardev:qmp_socket -S -M ? -version -device virtio-scsi-pci,id=scsi0 -blockdev driver=file,node-name=hd0-file,filename=/tmp
/18-qemu-options.t-p8x3/pool/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
    # [2022-06-14T13:59:47.162419+02:00] [debug] Waiting for 0 attempts                                                                                                                                                               
    # dmesg: read kernel buffer failed: Operation not permitted                                                                                                                                                                       
    # [2022-06-14T13:59:47.306450+02:00] [debug] Waiting for 1 attempts                                                                                                                                                               
    # [2022-06-14T13:59:47.306602+02:00] [info] ::: backend::baseclass::die_handler: Backend process died, backend errors are reported below in the following lines:
    #   QEMU terminated before QMP connection could be established. Check for errors below                                                                                                                                            
    # [2022-06-14T13:59:47.306784+02:00] [info] ::: OpenQA::Qemu::Proc::save_state: Saving QEMU state to qemu_state.json
    # [2022-06-14T13:59:47.307291+02:00] [debug] Passing remaining frames to the video encoder                                                                                                                                        
    # [2022-06-14T13:59:47.344530+02:00] [debug] Waiting for video encoder to finalize the video                                                                                                                                      
    # [2022-06-14T13:59:47.344596+02:00] [debug] The built-in video encoder (pid 26001) terminated                                                                                                                                    
    # [2022-06-14T13:59:47.345436+02:00] [debug] QEMU: QEMU emulator version 6.2.0 (SUSE Linux Enterprise 15)                                                                                                                         
    # [2022-06-14T13:59:47.345494+02:00] [debug] QEMU: Copyright (c) 2003-2021 Fabrice Bellard and the QEMU Project developers
    # [2022-06-14T13:59:47.345549+02:00] [debug] QEMU: Supported machines are:                                                                                                                                                        
    # [2022-06-14T13:59:47.345604+02:00] [debug] QEMU: microvm              microvm (i386)                                                                                                                                            
    # [2022-06-14T13:59:47.345657+02:00] [debug] QEMU: xenfv-4.2            Xen Fully-virtualized PC                                                                                                                                  
    # [2022-06-14T13:59:47.345710+02:00] [debug] QEMU: xenfv                Xen Fully-virtualized PC (alias of xenfv-3.1)
    # [2022-06-14T13:59:47.345762+02:00] [debug] QEMU: xenfv-3.1            Xen Fully-virtualized PC                                                                                                                                  
    # [2022-06-14T13:59:47.345817+02:00] [debug] QEMU: pc                   Standard PC (i440FX + PIIX, 1996) (alias of pc-i440fx-6.2)
    # [2022-06-14T13:59:47.345870+02:00] [debug] QEMU: pc-i440fx-6.2        Standard PC (i440FX + PIIX, 1996) (default)
    # [2022-06-14T13:59:47.345921+02:00] [debug] QEMU: pc-i440fx-6.1        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.345972+02:00] [debug] QEMU: pc-i440fx-6.0        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346023+02:00] [debug] QEMU: pc-i440fx-5.2        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346074+02:00] [debug] QEMU: pc-i440fx-5.1        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346124+02:00] [debug] QEMU: pc-i440fx-5.0        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346175+02:00] [debug] QEMU: pc-i440fx-4.2        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346226+02:00] [debug] QEMU: pc-i440fx-4.1        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346278+02:00] [debug] QEMU: pc-i440fx-4.0        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346329+02:00] [debug] QEMU: pc-i440fx-3.1        Standard PC (i440FX + PIIX, 1996)                                                                                                                         
    # [2022-06-14T13:59:47.346403+02:00] [debug] QEMU: pc-i440fx-3.0                                                                                                                                                                  
    # [2022-06-14T13:59:47.347125+02:00] [debug] sending magic and exit                                                                                                                                                               
    # [2022-06-14T13:59:47.347307+02:00] [debug] received magic close                                                                                                                                                                 
    # [2022-06-14T13:59:47.349774+02:00] [debug] backend process exited: 0                                                                                                                                                            
    # failed to start VM at /home/tina/openqa-devel/repos/os-autoinst/t/../backend/driver.pm line 107.                                                                                                                                
    # [2022-06-14T13:59:47.451244+02:00] [debug] stopping command server 25970 because test execution ended through exception
    # [2022-06-14T13:59:47.652981+02:00] [debug] done with command server                                                                                                                                                             
    # [2022-06-14T13:59:47.653343+02:00] [debug] stopping autotest process 25973                                                                                                                                                      
    # [2022-06-14T13:59:47.854764+02:00] [debug] done with autotest process                                                                                                                                                           
    # 25964: EXIT 1                                      
    # '                                                  
    #           matches '(?^u:Supported machines are\:)'                                                           
    ok 13 - no invalid option detected                                                                             
    ok 14 - connecting to QMP socket aborted                                                                       
    1..14                                                
    # Looks like you failed 1 test of 14.                                                                          
not ok 1 - qemu_append_option                                                                                      
#   Failed test 'qemu_append_option'                                                                               
#   at t/18-qemu-options.t line 82.
ok 2 - no (unexpected) warnings (via done_testing)
1..2
# Looks like you failed 1 test of 2.
Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/2 subtests

I pushed a branch to my fork and built this 15.4 image to check: registry.opensuse.org/home/tinita/branches/devel/openqa/containers15.4/os-autoinst_dev

The failure can be reproduced there by running:

% zypper in os-autoinst-devel os-autoinst-distri-opensuse-deps os-autoinst-qemu-kvm os-autoinst-qemu-x86
prove -I . t/18-qemu-options.t

I also built a tumbleweed image: registry.opensuse.org/home/tinita/branches/devel/openqatw/containers-tw/os-autoinst_dev
and it fails there too.

Acceptance criteria

  • AC1: Test no longer fails on Leap 15.4 and Tumbleweed

Suggestions

  • Seems like the supported machines are output regardless of the explicit command line parameter
  • Find out where the list comes from, bisect on the qemu command line parameters and adjust either command line parameters or tests accordingly

Related issues

Related to openQA Project - action #111887: Upgrade OBS package CI checks to Leap 15.4 (os-autoinst+openQA) size:SResolved

Related to openQA Project - action #111602: 18-qemu-options.t makes apparently unsafe assumptions about qemu behaviour with multiple params size:MResolved2022-05-25

History

#1 Updated by tinita 2 months ago

  • Description updated (diff)

#2 Updated by mkittler 2 months ago

It fails on Tumbleweed in the same way.

#3 Updated by okurz 2 months ago

  • Priority changed from Normal to High
  • Target version set to Ready

#4 Updated by okurz 2 months ago

  • Related to action #111887: Upgrade OBS package CI checks to Leap 15.4 (os-autoinst+openQA) size:S added

#5 Updated by okurz 2 months ago

  • Subject changed from 18-qemu-options.t fails on Leap 15.4 to 18-qemu-options.t fails on Leap 15.4 and Tumbleweed size:M
  • Description updated (diff)
  • Status changed from New to Workable

#6 Updated by okurz 2 months ago

  • Parent task set to #111860

#7 Updated by okurz 2 months ago

  • Related to action #111602: 18-qemu-options.t makes apparently unsafe assumptions about qemu behaviour with multiple params size:M added

#8 Updated by mkittler 2 months ago

  • Assignee set to mkittler

#9 Updated by mkittler 2 months ago

  • Status changed from Workable to Feedback

#10 Updated by mkittler 2 months ago

  • Status changed from Feedback to Resolved

The PR has been merged.

#11 Updated by AdamWill 2 months ago

I still don't understand why we are testing this. What are we testing here? qemu upstream behaviour? Under what circumstance do we actually expect a failure of this test to tell us something useful?

#12 Updated by okurz about 1 month ago

AdamWill wrote:

I still don't understand why we are testing this. What are we testing here? qemu upstream behaviour?

Let's cover that in #111602 :)

Also available in: Atom PDF