From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([140.186.70.92]:39430) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S0Gyd-00027Q-Tz for qemu-devel@nongnu.org; Wed, 22 Feb 2012 13:31:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1S0Gya-0006TJ-9E for qemu-devel@nongnu.org; Wed, 22 Feb 2012 13:31:43 -0500 Received: from e9.ny.us.ibm.com ([32.97.182.139]:55182) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1S0Gya-0006T4-6d for qemu-devel@nongnu.org; Wed, 22 Feb 2012 13:31:40 -0500 Received: from /spool/local by e9.ny.us.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Wed, 22 Feb 2012 13:31:37 -0500 Received: from d01relay05.pok.ibm.com (d01relay05.pok.ibm.com [9.56.227.237]) by d01dlp02.pok.ibm.com (Postfix) with ESMTP id 6E9406E8063 for ; Wed, 22 Feb 2012 13:31:33 -0500 (EST) Received: from d01av04.pok.ibm.com (d01av04.pok.ibm.com [9.56.224.64]) by d01relay05.pok.ibm.com (8.13.8/8.13.8/NCO v10.0) with ESMTP id q1MIVXoQ256898 for ; Wed, 22 Feb 2012 13:31:33 -0500 Received: from d01av04.pok.ibm.com (loopback [127.0.0.1]) by d01av04.pok.ibm.com (8.14.4/8.13.1/NCO v10.0 AVout) with ESMTP id q1MIVXtt011945 for ; Wed, 22 Feb 2012 13:31:33 -0500 Message-ID: <4F453483.5010203@us.ibm.com> Date: Wed, 22 Feb 2012 12:31:31 -0600 From: Anthony Liguori MIME-Version: 1.0 References: <1328679700-31015-1-git-send-email-peter.maydell@linaro.org> <1328679700-31015-4-git-send-email-peter.maydell@linaro.org> In-Reply-To: <1328679700-31015-4-git-send-email-peter.maydell@linaro.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH 3/4] Make kernel, initrd and append be machine_opts List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Peter Maydell Cc: Grant Likely , patches@linaro.org, qemu-devel@nongnu.org, Alexander Graf On 02/07/2012 11:41 PM, Peter Maydell wrote: > Make kernel, initrd, append be machine opts (ie -machine kernel=foo) > with the old plain command line arguments as legacy/convenience > equivalents. > > Signed-off-by: Peter Maydell I applied this patch since Andrzej applied the first two. The four patch conflicts a bit more than I feel comfortable fixing myself. I would suggest that you just fold the 4th patch into your next pull request. Regards, Anthony Liguori > --- > qemu-config.c | 12 ++++++++++++ > vl.c | 24 ++++++++++++++++-------- > 2 files changed, 28 insertions(+), 8 deletions(-) > > diff --git a/qemu-config.c b/qemu-config.c > index c938470..07480a4 100644 > --- a/qemu-config.c > +++ b/qemu-config.c > @@ -536,6 +536,18 @@ static QemuOptsList qemu_machine_opts = { > .name = "kernel_irqchip", > .type = QEMU_OPT_BOOL, > .help = "use KVM in-kernel irqchip", > + }, { > + .name = "kernel", > + .type = QEMU_OPT_STRING, > + .help = "Linux kernel image file", > + }, { > + .name = "initrd", > + .type = QEMU_OPT_STRING, > + .help = "Linux initial ramdisk file", > + }, { > + .name = "append", > + .type = QEMU_OPT_STRING, > + .help = "Linux kernel command line", > }, > { /* End of list */ } > }, > diff --git a/vl.c b/vl.c > index fe24ef8..b8bb955 100644 > --- a/vl.c > +++ b/vl.c > @@ -2238,11 +2238,8 @@ int main(int argc, char **argv, char **envp) > module_call_init(MODULE_INIT_MACHINE); > machine = find_default_machine(); > cpu_model = NULL; > - initrd_filename = NULL; > ram_size = 0; > snapshot = 0; > - kernel_filename = NULL; > - kernel_cmdline = ""; > cyls = heads = secs = 0; > translation = BIOS_ATA_TRANSLATION_AUTO; > > @@ -2318,9 +2315,6 @@ int main(int argc, char **argv, char **envp) > cpu_model = optarg; > } > break; > - case QEMU_OPTION_initrd: > - initrd_filename = optarg; > - break; > case QEMU_OPTION_hda: > { > char buf[256]; > @@ -2451,10 +2445,13 @@ int main(int argc, char **argv, char **envp) > } > break; > case QEMU_OPTION_kernel: > - kernel_filename = optarg; > + qemu_opts_set(qemu_find_opts("machine"), 0, "kernel", optarg); > + break; > + case QEMU_OPTION_initrd: > + qemu_opts_set(qemu_find_opts("machine"), 0, "initrd", optarg); > break; > case QEMU_OPTION_append: > - kernel_cmdline = optarg; > + qemu_opts_set(qemu_find_opts("machine"), 0, "append", optarg); > break; > case QEMU_OPTION_cdrom: > drive_add(IF_DEFAULT, 2, optarg, CDROM_OPTS); > @@ -3241,6 +3238,17 @@ int main(int argc, char **argv, char **envp) > fprintf(stderr, "qemu_init_main_loop failed\n"); > exit(1); > } > + > + kernel_filename = qemu_opt_get(qemu_opts_find(qemu_find_opts("machine"), > + 0), "kernel"); > + initrd_filename = qemu_opt_get(qemu_opts_find(qemu_find_opts("machine"), > + 0), "initrd"); > + kernel_cmdline = qemu_opt_get(qemu_opts_find(qemu_find_opts("machine"), > + 0), "append"); > + if (!kernel_cmdline) { > + kernel_cmdline = ""; > + } > + > linux_boot = (kernel_filename != NULL); > > if (!linux_boot&& *kernel_cmdline != '\0') {