All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Andreas Färber" <afaerber@suse.de>
To: Michael Mueller <mimu@linux.vnet.ibm.com>
Cc: qemu-devel@nongnu.org,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Peter Crosthwaite <peter.crosthwaite@xilinx.com>,
	linux-s390@vger.kernel.org, kvm@vger.kernel.org,
	Gleb Natapov <gleb@kernel.org>, Alexander Graf <agraf@suse.de>,
	Eduardo Habkost <ehabkost@redhat.com>,
	linux-kernel@vger.kernel.org,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"Jason J. Herne" <jjherne@linux.vnet.ibm.com>,
	Cornelia Huck <cornelia.huck@de.ibm.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Alistair Francis <alistair.francis@xilinx.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH v3 01/16] Introduce probe mode for machine type none
Date: Mon, 02 Mar 2015 17:57:01 +0100	[thread overview]
Message-ID: <54F4965D.7000701@suse.de> (raw)
In-Reply-To: <20150302174352.3715f1e4@bee>

Am 02.03.2015 um 17:43 schrieb Michael Mueller:
> On Mon, 02 Mar 2015 14:57:21 +0100
> Andreas Färber <afaerber@suse.de> wrote:
> 
>>>  int configure_accelerator(MachineState *ms)
>>>  {
>>> -    const char *p;
>>> +    const char *p, *name;
>>>      char buf[10];
>>>      int ret;
>>>      bool accel_initialised = false;
>>>      bool init_failed = false;
>>>      AccelClass *acc = NULL;
>>> +    ObjectClass *oc;
>>> +    bool probe_mode = false;
>>>  
>>>      p = qemu_opt_get(qemu_get_machine_opts(), "accel");
>>>      if (p == NULL) {
>>> -        /* Use the default "accelerator", tcg */
>>> -        p = "tcg";
>>> +        oc = (ObjectClass *) MACHINE_GET_CLASS(current_machine);
>>> +        name = object_class_get_name(oc);
>>> +        probe_mode = !strcmp(name, "none" TYPE_MACHINE_SUFFIX);
>>> +        if (probe_mode) {
>>> +            /* Use these accelerators in probe mode, tcg should be last */
>>> +            p = probe_mode_accels;
>>> +        } else {
>>> +            /* Use the default "accelerator", tcg */
>>> +            p = "tcg";
>>> +        }
>>>      }  
>>
>> Can't we instead use an explicit ,accel=probe or ,accel=auto?
>> That would then obsolete the next patch.
> 
> How would you express the following with the accel=<pseudo-accel> approach?
> 
> -probe -machine s390-ccw,accel=kvm 
> 
> Using machine "none" as default with tcg as last accelerator initialized should not break
> anything.
> 
> -M none

Let me ask differently: What does -machine none or -M none have to do
with probing? It reads as if you are introducing two probe modes. Why do
you need both? If we have -probe, isn't that independent of which
machine we specify? Who is going to call either, with which respective goal?

I think that changing the semantics of an absent ,accel=foo parameter to
mean something else than its longtime default of tcg is a bad idea.

Have you testing qtest with it? Doesn't -qtest imply accel=qtest or is
that always passed explicitly?

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu,
Graham Norton; HRB 21284 (AG Nürnberg)

WARNING: multiple messages have this Message-ID (diff)
From: "Andreas Färber" <afaerber@suse.de>
To: Michael Mueller <mimu@linux.vnet.ibm.com>
Cc: linux-s390@vger.kernel.org,
	Peter Crosthwaite <peter.crosthwaite@xilinx.com>,
	Eduardo Habkost <ehabkost@redhat.com>,
	kvm@vger.kernel.org, Gleb Natapov <gleb@kernel.org>,
	linux-kernel@vger.kernel.org, qemu-devel@nongnu.org,
	Alexander Graf <agraf@suse.de>,
	Christian Borntraeger <borntraeger@de.ibm.com>,
	"Jason J. Herne" <jjherne@linux.vnet.ibm.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Cornelia Huck <cornelia.huck@de.ibm.com>,
	"Edgar E. Iglesias" <edgar.iglesias@gmail.com>,
	Alistair Francis <alistair.francis@xilinx.com>,
	Richard Henderson <rth@twiddle.net>
Subject: Re: [Qemu-devel] [PATCH v3 01/16] Introduce probe mode for machine type none
Date: Mon, 02 Mar 2015 17:57:01 +0100	[thread overview]
Message-ID: <54F4965D.7000701@suse.de> (raw)
In-Reply-To: <20150302174352.3715f1e4@bee>

Am 02.03.2015 um 17:43 schrieb Michael Mueller:
> On Mon, 02 Mar 2015 14:57:21 +0100
> Andreas Färber <afaerber@suse.de> wrote:
> 
>>>  int configure_accelerator(MachineState *ms)
>>>  {
>>> -    const char *p;
>>> +    const char *p, *name;
>>>      char buf[10];
>>>      int ret;
>>>      bool accel_initialised = false;
>>>      bool init_failed = false;
>>>      AccelClass *acc = NULL;
>>> +    ObjectClass *oc;
>>> +    bool probe_mode = false;
>>>  
>>>      p = qemu_opt_get(qemu_get_machine_opts(), "accel");
>>>      if (p == NULL) {
>>> -        /* Use the default "accelerator", tcg */
>>> -        p = "tcg";
>>> +        oc = (ObjectClass *) MACHINE_GET_CLASS(current_machine);
>>> +        name = object_class_get_name(oc);
>>> +        probe_mode = !strcmp(name, "none" TYPE_MACHINE_SUFFIX);
>>> +        if (probe_mode) {
>>> +            /* Use these accelerators in probe mode, tcg should be last */
>>> +            p = probe_mode_accels;
>>> +        } else {
>>> +            /* Use the default "accelerator", tcg */
>>> +            p = "tcg";
>>> +        }
>>>      }  
>>
>> Can't we instead use an explicit ,accel=probe or ,accel=auto?
>> That would then obsolete the next patch.
> 
> How would you express the following with the accel=<pseudo-accel> approach?
> 
> -probe -machine s390-ccw,accel=kvm 
> 
> Using machine "none" as default with tcg as last accelerator initialized should not break
> anything.
> 
> -M none

Let me ask differently: What does -machine none or -M none have to do
with probing? It reads as if you are introducing two probe modes. Why do
you need both? If we have -probe, isn't that independent of which
machine we specify? Who is going to call either, with which respective goal?

I think that changing the semantics of an absent ,accel=foo parameter to
mean something else than its longtime default of tcg is a bad idea.

Have you testing qtest with it? Doesn't -qtest imply accel=qtest or is
that always passed explicitly?

Regards,
Andreas

-- 
SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu,
Graham Norton; HRB 21284 (AG Nürnberg)

  reply	other threads:[~2015-03-02 16:57 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-02 12:43 [PATCH v3 00/16] s390x cpu model implementation Michael Mueller
2015-03-02 12:43 ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43 ` [PATCH v3 01/16] Introduce probe mode for machine type none Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43   ` Michael Mueller
2015-03-02 13:57   ` Andreas Färber
2015-03-02 13:57     ` [Qemu-devel] " Andreas Färber
2015-03-02 16:43     ` Michael Mueller
2015-03-02 16:43       ` Michael Mueller
2015-03-02 16:57       ` Andreas Färber [this message]
2015-03-02 16:57         ` Andreas Färber
2015-03-03 10:55         ` Michael Mueller
2015-03-03 10:55           ` Michael Mueller
2015-03-04 19:19           ` Eduardo Habkost
2015-03-04 19:19             ` Eduardo Habkost
2015-03-05 14:56             ` Michael Mueller
2015-03-05 14:56               ` Michael Mueller
2015-03-05 15:07               ` Eduardo Habkost
2015-03-05 15:07                 ` Eduardo Habkost
2015-03-02 19:17   ` Eduardo Habkost
2015-03-02 19:17     ` [Qemu-devel] " Eduardo Habkost
2015-03-03 10:23     ` Michael Mueller
2015-03-03 10:23       ` [Qemu-devel] " Michael Mueller
2015-03-03 10:23       ` Michael Mueller
2015-03-02 12:43 ` [PATCH v3 02/16] Introduce option --probe to switch into probe mode Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43 ` [PATCH v3 03/16] Introduce stub routine cpu_desc_avail Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43 ` [PATCH v3 04/16] target-s390x: Introduce cpu facilities Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43   ` Michael Mueller
2015-03-02 12:43 ` [PATCH v3 05/16] target-s390x: Generate facility defines per cpu model Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43 ` [PATCH v3 06/16] target-s390x: Introduce cpu models Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43 ` [PATCH v3 07/16] target-s390x: Define cpu model specific facility lists Michael Mueller
2015-03-02 12:43   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:43   ` Michael Mueller
2015-03-02 12:44 ` [PATCH v3 08/16] target-s390x: Add cpu model alias definition routines Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44 ` [PATCH v3 09/16] target-s390x: Update linux-headers/asm-s390/kvm.h Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44 ` [PATCH v3 10/16] target-s390x: Add KVM VM attribute interface for cpu models Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44 ` [PATCH v3 11/16] target-s390x: Add cpu class initialization routines Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44   ` Michael Mueller
2015-03-02 12:44 ` [PATCH v3 12/16] target-s390x: Prepare accelerator during cpu object realization Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44   ` Michael Mueller
2015-03-02 12:44 ` [PATCH v3 13/16] target-s390x: New QMP command query-cpu-model Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44   ` Michael Mueller
2015-03-02 12:44 ` [PATCH v3 14/16] target-s390x: Extend QMP command query-cpu-definitions Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 19:11   ` Eduardo Habkost
2015-03-02 19:11     ` [Qemu-devel] " Eduardo Habkost
2015-03-04  9:00     ` Michael Mueller
2015-03-04  9:00       ` Michael Mueller
2015-03-02 12:44 ` [PATCH v3 15/16] target-s390x: Introduce facility test routine Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 12:44 ` [PATCH v3 16/16] target-s390x: Enable cpu model usage Michael Mueller
2015-03-02 12:44   ` [Qemu-devel] " Michael Mueller
2015-03-02 19:25 ` [PATCH v3 00/16] s390x cpu model implementation Eduardo Habkost
2015-03-02 19:25   ` [Qemu-devel] " Eduardo Habkost

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=54F4965D.7000701@suse.de \
    --to=afaerber@suse.de \
    --cc=agraf@suse.de \
    --cc=alistair.francis@xilinx.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cornelia.huck@de.ibm.com \
    --cc=edgar.iglesias@gmail.com \
    --cc=ehabkost@redhat.com \
    --cc=gleb@kernel.org \
    --cc=jjherne@linux.vnet.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=mimu@linux.vnet.ibm.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.crosthwaite@xilinx.com \
    --cc=qemu-devel@nongnu.org \
    --cc=rth@twiddle.net \
    /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.