From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:48555) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7H3S-00006l-2W for qemu-devel@nongnu.org; Mon, 12 Mar 2012 22:01:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S7H3Q-0002j4-28 for qemu-devel@nongnu.org; Mon, 12 Mar 2012 22:01:37 -0400 Received: from mail-yw0-f45.google.com ([209.85.213.45]:54499) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S7H3P-0002iz-Tq for qemu-devel@nongnu.org; Mon, 12 Mar 2012 22:01:35 -0400 Received: by yhoo21 with SMTP id o21so49160yho.4 for ; Mon, 12 Mar 2012 19:01:34 -0700 (PDT) Message-ID: <4F5EAA7C.3030401@codemonkey.ws> Date: Mon, 12 Mar 2012 21:01:32 -0500 From: Anthony Liguori MIME-Version: 1.0 References: <1331320747-2209-1-git-send-email-ehabkost@redhat.com> In-Reply-To: <1331320747-2209-1-git-send-email-ehabkost@redhat.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] initialize CPU model list after handling -readconfig options List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Eduardo Habkost Cc: qemu-devel@nongnu.org On 03/09/2012 01:19 PM, Eduardo Habkost wrote: > To properly load cpudefs using -readconfig, we have to call > cpudef_init() after finishing the command-line option handling. > > Consequently, the handling of "-cpu ?" has to be done after the > command-line option handling loop, too. > > Without this patch, "-readconfig configfile -cpu ?" fails to list the > CPU definitions read from 'configfile'. > > Signed-off-by: Eduardo Habkost Applied. Thanks. Regards, Anthony Liguori > --- > vl.c | 20 +++++++++++++------- > 1 files changed, 13 insertions(+), 7 deletions(-) > > diff --git a/vl.c b/vl.c > index 97ab2b9..65f11f2 100644 > --- a/vl.c > +++ b/vl.c > @@ -2359,7 +2359,6 @@ int main(int argc, char **argv, char **envp) > exit(1); > } > } > - cpudef_init(); > > /* second pass of option parsing */ > optind = 1; > @@ -2382,12 +2381,7 @@ int main(int argc, char **argv, char **envp) > break; > case QEMU_OPTION_cpu: > /* hw initialization will check this */ > - if (*optarg == '?') { > - list_cpus(stdout,&fprintf, optarg); > - exit(0); > - } else { > - cpu_model = optarg; > - } > + cpu_model = optarg; > break; > case QEMU_OPTION_hda: > { > @@ -3191,6 +3185,18 @@ int main(int argc, char **argv, char **envp) > } > loc_set_none(); > > + /* Init CPU def lists, based on config > + * - Must be called after all the qemu_read_config_file() calls > + * - Must be called before list_cpus() > + * - Must be called before machine->init() > + */ > + cpudef_init(); > + > + if (cpu_model&& *cpu_model == '?') { > + list_cpus(stdout,&fprintf, optarg); > + exit(0); > + } > + > /* Open the logfile at this point, if necessary. We can't open the logfile > * when encountering either of the logging options (-d or -D) because the > * other one may be encountered later on the command line, changing the