All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cornelia Huck <cohuck@redhat.com>
To: Cleber Rosa <crosa@redhat.com>
Cc: qemu-devel@nongnu.org,
	"Aleksandar Markovic" <amarkovic@wavecomp.com>,
	"Caio Carrara" <ccarrara@redhat.com>,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	"Eduardo Habkost" <ehabkost@redhat.com>,
	"Alex Bennée" <alex.bennee@linaro.org>,
	"Aleksandar Rikalo" <arikalo@wavecomp.com>,
	"Aurelien Jarno" <aurelien@aurel32.net>,
	"Fam Zheng" <fam@euphon.net>,
	qemu-s390x@nongnu.org, "Stefan Markovic" <smarkovic@wavecomp.com>
Subject: Re: [Qemu-devel] [PATCH v2 05/20] Acceptance tests: introduce arch parameter and attribute
Date: Fri, 8 Feb 2019 11:10:48 +0100	[thread overview]
Message-ID: <20190208111048.749914f2.cohuck@redhat.com> (raw)
In-Reply-To: <99b31455-41be-af68-ad03-1119340905c3@redhat.com>

On Thu, 7 Feb 2019 13:22:10 -0500
Cleber Rosa <crosa@redhat.com> wrote:

> On 2/7/19 1:02 PM, Cleber Rosa wrote:
> > 
> > 
> > On 2/6/19 10:40 AM, Cornelia Huck wrote:  
> >> On Fri,  1 Feb 2019 19:55:55 -0500
> >> Cleber Rosa <crosa@redhat.com> wrote:
> >>  
> >>> It's useful to define the architecture that should be used in
> >>> situations such as:
> >>>  * the intended target of the QEMU binary to be used on tests
> >>>  * the architecture of code to be run within the QEMU binary, such
> >>>    as a kernel image or a full blown guest OS image  
> >>
> >> Thinking a bit more about this: These two are often, but not
> >> necessarily, the same. For example, starting a machine with the 64 bit
> >> variant of an architecture to run a guest with the 32 bit variant of
> >> that architecture might be a valid case.
> >>  
> > 
> > I agree with everything you said, and that's why I imagine "arch" being
> > used as a safe default type of parameter.
> > 
> > See, the QEMU binary can be influenced by the "arch" parameter, but can
> > still be *defined* by the "qemu_bin" parameter.  That's the same
> > approach I believe can be applied to the architecture of the guest code.
> >  When time comes, we may add a "guest_arch" parameter of sorts.  We
> > don't have that use case now, but I believe we'll be covered when it comes.

Ok, makes sense.

> >   
> >>>
> >>> This commit introduces both a test parameter and a test instance
> >>> attribute, that will contain such a value.
> >>>
> >>> Now, when the "arch" test parameter is given, it will influence the
> >>> selection of the default QEMU binary, if one is not given explicitly
> >>> by means of the "qemu_img" parameter.
> >>>
> >>> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> >>> Signed-off-by: Cleber Rosa <crosa@redhat.com>
> >>> ---
> >>>  docs/devel/testing.rst                    | 17 +++++++++++++++++
> >>>  tests/acceptance/avocado_qemu/__init__.py | 14 +++++++++++---
> >>>  2 files changed, 28 insertions(+), 3 deletions(-)
> >>>
> >>> diff --git a/docs/devel/testing.rst b/docs/devel/testing.rst
> >>> index 44c9b3ae74..d37c4b0e77 100644
> >>> --- a/docs/devel/testing.rst
> >>> +++ b/docs/devel/testing.rst
> >>> @@ -689,6 +689,16 @@ vm
> >>>  A QEMUMachine instance, initially configured according to the given
> >>>  ``qemu_bin`` parameter.
> >>>  
> >>> +arch
> >>> +~~~~
> >>> +
> >>> +The architecture that will be used on a number of different
> >>> +scenarios.  For instance, when a QEMU binary is not explicitly given,
> >>> +the one selected will depend on this attribute.  
> >>
> >> This is probably a bit too vague. (What are "different scenarios"?)
> >>  
> > 
> > I believe it's kind of vague because I was thinking of both the
> > "framework level" code, and the possible uses in the tests.
> > 
> > At the "framework" level, it's only used for the case listed there
> > ("when a QEMU binary is not explicitly given...").
> >   
> >> Does it select anything else than the architecture of the vm that will
> >> be started?
> >>  
> > 
> > No, it doesn't.  The idea here was that tests may choose to use the same
> > attribute value in their own specific ("different") scenarios.
> > 
> > I can certainly make this clearer.
> >   
> 
> Hi Cornelia,
> 
> How does this sound?
> 
> ---

What about adding the following as a lead-in:

"The architecture can be used on different levels of the stack, e.g. by
the framework or by the test itself."

That would probably explain what you wanted to express with "different
scenarios".

> 
> The architecture that will influence the selection of a QEMU binary
> (when one is not explicitly given).

s/that will/will/ ?

> 
> Tests are also free to use this attribute value, for their own needs.
> A test may, for instance, use the same value when selecting the
> architecture of a kernel or disk image to boot a VM with.
> 
> The ``arch`` attribute will be set to the test parameter of the same
> name, and if one is not given explicitly, it will be set to ``None``.
> 
> ---
> 
> It uses your previous point about the 64/32 bit host/guest as an
> example.  Again, a test could use another parameter (not a Test class
> attribute) if it wants to use code for a different arch than the host.

Sounds good!

  reply	other threads:[~2019-02-08 10:11 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-02  0:55 [Qemu-devel] [PATCH v2 00/20] Acceptance Tests: target architecture support Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 01/20] scripts/qemu.py: log QEMU launch command line Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 02/20] Acceptance tests: show avocado test execution by default Cleber Rosa
2019-02-06 14:36   ` Cornelia Huck
2019-02-06 17:02     ` Cleber Rosa
2019-02-06 17:20       ` Cornelia Huck
2019-02-06 17:36         ` Cleber Rosa
2019-02-07 10:25           ` Cornelia Huck
2019-02-07 18:32             ` Cleber Rosa
2019-02-08  9:54               ` Cornelia Huck
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 03/20] Acceptance tests: improve docstring on pick_default_qemu_bin() Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 04/20] Acceptance tests: fix doc reference to avocado_qemu directory Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 05/20] Acceptance tests: introduce arch parameter and attribute Cleber Rosa
2019-02-06 15:40   ` Cornelia Huck
2019-02-07 18:02     ` Cleber Rosa
2019-02-07 18:22       ` Cleber Rosa
2019-02-08 10:10         ` Cornelia Huck [this message]
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 06/20] Acceptance tests: use "arch:" tag to filter target specific tests Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 07/20] Acceptance tests: look for target architecture in test tags first Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 08/20] Boot Linux Console Test: rename the x86_64 after the arch and machine Cleber Rosa
2019-02-02  0:55 ` [Qemu-devel] [PATCH v2 09/20] Boot Linux Console Test: update the x86_64 kernel Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 10/20] Boot Linux Console Test: add common kernel command line options Cleber Rosa
2019-02-02  1:01   ` Philippe Mathieu-Daudé
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 11/20] Boot Linux Console Test: increase timeout Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 12/20] Boot Linux Console Test: refactor the console watcher into utility method Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 13/20] scripts/qemu.py: support adding a console with the default serial device Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 14/20] Boot Linux Console Test: add a test for mips + malta Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 15/20] Boot Linux Console Test: add a test for mips64el " Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 16/20] Boot Linux Console Test: add a test for ppc64 + pseries Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 17/20] Boot Linux Console Test: add a test for aarch64 + virt Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 18/20] Boot Linux Console Test: add a test for arm " Cleber Rosa
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 19/20] Boot Linux Console Test: add a test for s390x + s390-ccw-virtio Cleber Rosa
2019-02-06 15:44   ` Cornelia Huck
2019-02-02  0:56 ` [Qemu-devel] [PATCH v2 20/20] Boot Linux Console Test: add a test for alpha + clipper Cleber Rosa
2019-02-02 19:20 ` [Qemu-devel] [PATCH v2 00/20] Acceptance Tests: target architecture support no-reply
2019-02-02 19:20 ` no-reply
2019-02-02 19:23 ` no-reply
2019-02-02 19:25 ` no-reply
2019-02-02 19:26 ` no-reply
2019-02-03 17:46 ` no-reply

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=20190208111048.749914f2.cohuck@redhat.com \
    --to=cohuck@redhat.com \
    --cc=alex.bennee@linaro.org \
    --cc=amarkovic@wavecomp.com \
    --cc=arikalo@wavecomp.com \
    --cc=aurelien@aurel32.net \
    --cc=ccarrara@redhat.com \
    --cc=crosa@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=fam@euphon.net \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    --cc=smarkovic@wavecomp.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.