From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756285AbbCCKzg (ORCPT ); Tue, 3 Mar 2015 05:55:36 -0500 Received: from e06smtp16.uk.ibm.com ([195.75.94.112]:50216 "EHLO e06smtp16.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755862AbbCCKzd convert rfc822-to-8bit (ORCPT ); Tue, 3 Mar 2015 05:55:33 -0500 Date: Tue, 3 Mar 2015 11:55:24 +0100 From: Michael Mueller To: Andreas =?UTF-8?B?RsOkcmJlcg==?= Cc: qemu-devel@nongnu.org, "Edgar E. Iglesias" , Peter Crosthwaite , linux-s390@vger.kernel.org, kvm@vger.kernel.org, Gleb Natapov , Alexander Graf , Eduardo Habkost , linux-kernel@vger.kernel.org, Christian Borntraeger , "Jason J. Herne" , Cornelia Huck , Paolo Bonzini , Alistair Francis , Richard Henderson Subject: Re: [Qemu-devel] [PATCH v3 01/16] Introduce probe mode for machine type none Message-ID: <20150303115524.40bd40b0@bee> In-Reply-To: <54F4965D.7000701@suse.de> References: <1425300248-40277-1-git-send-email-mimu@linux.vnet.ibm.com> <1425300248-40277-2-git-send-email-mimu@linux.vnet.ibm.com> <54F46C41.3000201@suse.de> <20150302174352.3715f1e4@bee> <54F4965D.7000701@suse.de> Organization: IBM X-Mailer: Claws Mail 3.9.3 (GTK+ 2.24.23; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 15030310-0025-0000-0000-000004197B93 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 02 Mar 2015 17:57:01 +0100 Andreas Färber wrote: > Am 02.03.2015 um 17:43 schrieb Michael Mueller: > > On Mon, 02 Mar 2015 14:57:21 +0100 > > Andreas Färber 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= 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 The machine none? nothing directly, I guess. What are real world use cases for that machine type? > you need both? If we have -probe, isn't that independent of which It is just two different means to switch on the same mode. > machine we specify? Who is going to call either, with which respective goal? -probe itself would be sufficient but I currently do not want to enforce the use of a new parameter. Best would be not to have that mode at all if possible. The intended use case is driven by management interfaces that need to draw decisions on, in this particular case runnable cpu models, with information originated by qemu. Let me walk through Eduardo's suggestion first and crosscheck it with my requirements before we enter in a maybe afterwards obsolete discussion. Thanks, Michael > > 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 >