All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Philippe Mathieu-Daudé" <philmd@redhat.com>
To: Liam Merwick <liam.merwick@oracle.com>,
	alex.bennee@linaro.org, fam@euphon.net
Cc: qemu-devel@nongnu.org, pbonzini@redhat.com, wainersm@redhat.com,
	slp@redhat.com, sgarzare@redhat.com
Subject: Re: [PATCH v2 0/6] tests/boot_linux_console: add extra boot acceptance tests
Date: Thu, 6 Feb 2020 16:24:12 +0100	[thread overview]
Message-ID: <4a924e1f-0c4a-931f-a261-041387f9de81@redhat.com> (raw)
In-Reply-To: <1580914565-19675-1-git-send-email-liam.merwick@oracle.com>

On 2/5/20 3:55 PM, Liam Merwick wrote:
> Add acceptance tests for the microvm machine class, PVH, and the
> new qboot BIOS.
> 
> In the case of the test to boot an uncompressed kernel there didn't
> seem to be any suitable uncompressed kernel on https://archives.fedoraproject.org/
> (there is a vmlinux in kernel-debuginfo but that RPM is 575M and
> caused timeouts when populating the Avocado cache when first run)
> so I chose an RPM with kernels for Kata that is 14M.
> (there was a discussion in [1] regarding testing PVH boot but it focussed
> more around building a vmlinux binary during testing).
> 
> [ What prompted these patches was the discovery that a 'pc' guest booting an
> uncompressed kernel (PVH) with a PCI netdev hangs (before we even get guest
> console output) when bios-microvm.bin (qboot) is supplied via -bios
> (no issue when using 'q35' or 'microvm' machine classes).
> 
> E.g. adding the following line to test_x86_64_pc_qboot_pvh() is enough to
> trigger a guest hang during startup:
> self.vm.add_args('-netdev', 'user,id=n1', '-device', 'virtio-net-pci,netdev=n1')
> 
> I bisected that issue to 176d2cda0dee [2] in 4.1 but haven't worked out yet
> how/why the "die-id" changes impact the qboot/PVH combination
> (the boot succeeds with any subset of those boot variables).
> 
> Is booting the 'pc' machine class with bios-microvm.bin something that QEMU
> officially supports or is qboot intended for microvm only? ]
> 
> Each test added here adds about 1.5s to the overall runtime.
> I have run them through the Travis QEMU CI [3] and those acceptance tests pass.
> 
> v1 -> v2
> Removed unnecessary qboot test for microvm in Patches 2 and 5 [Stefano]
> Added SeaBIOS test for microvm to Patch2
> Fix path concatenation in Patch4 to use os.path for filesystem paths [Wanier]
> Added Patch6 to fix extract_from_deb() to use os.path for filesystem paths
> Used dictionary to store kernel info in Patch5 [Philippe]
> Dropped patch with typo fix that has been queued separately
> Added Stefano's R-b to the patches which have not significantly changed.
> 
> [1] https://patchew.org/QEMU/20191206140012.15517-1-wainersm@redhat.com/
> [2] 176d2cda0dee ("i386/cpu: Consolidate die-id validity in smp context")
> [3] https://travis-ci.org/merwick/qemu/builds/645487393
> [4] https://github.com/wainersm/qemu/commit/8f705e98df90b436b0f4946331d441309c437f7b
> 
> 
> Liam Merwick (6):
>    tests/boot_linux_console: add microvm acceptance test
>    tests/boot_linux_console: add BIOS acceptance test
>    travis.yml: install rpm2cpio for acceptance tests
>    tests/boot_linux_console: add extract_from_rpm method
>    tests/boot_linux_console: add PVH acceptance tests
>    tests/boot_linux_console: use os.path for filesystem paths
> 
>   .travis.yml                            |   1 +
>   tests/acceptance/boot_linux_console.py | 114 ++++++++++++++++++++++++++++++---
>   2 files changed, 106 insertions(+), 9 deletions(-)

Patches 3, 4 and 6 applied to my python-next tree:
https://gitlab.com/philmd/qemu/commits/python-next



      parent reply	other threads:[~2020-02-06 15:25 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-05 14:55 [PATCH v2 0/6] tests/boot_linux_console: add extra boot acceptance tests Liam Merwick
2020-02-05 14:56 ` [PATCH v2 1/6] tests/boot_linux_console: add microvm acceptance test Liam Merwick
2020-02-06 13:57   ` Philippe Mathieu-Daudé
2020-02-06 14:09     ` Philippe Mathieu-Daudé
2020-02-06 15:05       ` Liam Merwick
2020-02-19 19:02         ` Wainer dos Santos Moschetta
2020-02-05 14:56 ` [PATCH v2 2/6] tests/boot_linux_console: add BIOS " Liam Merwick
2020-02-06 14:12   ` Philippe Mathieu-Daudé
2020-02-19 19:20     ` Wainer dos Santos Moschetta
2020-02-26 17:36       ` Liam Merwick
2020-02-05 14:56 ` [PATCH v2 3/6] travis.yml: install rpm2cpio for acceptance tests Liam Merwick
2020-02-06 14:27   ` Philippe Mathieu-Daudé
2020-02-05 14:56 ` [PATCH v2 4/6] tests/boot_linux_console: add extract_from_rpm method Liam Merwick
2020-02-06 14:27   ` Philippe Mathieu-Daudé
2020-02-05 14:56 ` [PATCH v2 5/6] tests/boot_linux_console: add PVH acceptance tests Liam Merwick
2020-02-06 14:24   ` Philippe Mathieu-Daudé
2020-02-05 14:56 ` [PATCH v2 6/6] tests/boot_linux_console: use os.path for filesystem paths Liam Merwick
2020-02-06 14:26   ` Philippe Mathieu-Daudé
2020-02-06 15:24 ` Philippe Mathieu-Daudé [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4a924e1f-0c4a-931f-a261-041387f9de81@redhat.com \
    --to=philmd@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=fam@euphon.net \
    --cc=liam.merwick@oracle.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=sgarzare@redhat.com \
    --cc=slp@redhat.com \
    --cc=wainersm@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.