From patchwork Sat Oct 31 13:11:29 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: William Dauchy X-Patchwork-Id: 7531041 Return-Path: X-Original-To: patchwork-kvm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 15AC7BEEA4 for ; Sat, 31 Oct 2015 13:12:57 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 12ED8206C7 for ; Sat, 31 Oct 2015 13:12:56 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 013D9205D8 for ; Sat, 31 Oct 2015 13:12:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753411AbbJaNM1 (ORCPT ); Sat, 31 Oct 2015 09:12:27 -0400 Received: from mail-pa0-f53.google.com ([209.85.220.53]:34940 "EHLO mail-pa0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753288AbbJaNM0 (ORCPT ); Sat, 31 Oct 2015 09:12:26 -0400 Received: by pasz6 with SMTP id z6so100600973pas.2 for ; Sat, 31 Oct 2015 06:12:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id; bh=kFi1ReFBJ59UdtSRPSS2qIDPRqEXmb1td35R3pXLWxs=; b=ANlvXpkDOF0SC6MtyfM3/71I37fT2TSNccAnMCGcdylqrdO2UhI/6ppvcnUIKzpoyM GHu7p5nNEKJr88kEwh2/DVO6WoRPQOYEa52YAIrbswzx2xuuA+rEInYui9JMkp5QFhhw nPzxuIrlA7x3uQiYZZewv4QupmEmd1Jd4Q7SnEIQ+oqxsujNfQC9EropEcaILq1488xw 9gIlqt35AK3XgEOQ6PkqgdWGv9sDbRy/2AnZhELa3fV5wj8yZ3ozLXirRmGeRx/SMEaK rNLZG2eepbPyGe2zzNLXFsMznhzV3KihKnNbCrMNU8JgzfH4CYgT53D37mnbeNIXCTNx EHKA== X-Received: by 10.66.161.35 with SMTP id xp3mr15147864pab.13.1446297145816; Sat, 31 Oct 2015 06:12:25 -0700 (PDT) Received: from bla.gandi.net (fob.gandi.net. [217.70.181.1]) by smtp.gmail.com with ESMTPSA id sz7sm2382547pbc.57.2015.10.31.06.12.21 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Sat, 31 Oct 2015 06:12:24 -0700 (PDT) From: William Dauchy To: will.deacon@arm.com, kvm@vger.kernel.org Cc: William Dauchy Subject: [PATCH] kvmtool/run: set a default cmdline if not set Date: Sat, 31 Oct 2015 14:11:29 +0100 Message-Id: <1446297089-12689-1-git-send-email-william@gandi.net> X-Mailer: git-send-email 2.6.1 Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org X-Spam-Status: No, score=-6.8 required=5.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID,T_RP_MATCHES_RCVD,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP when starting with custom kernel and disk options, kernel_cmdline is NULL; it results in a segfault while trying to look for a string using `strstr`: __strstr_sse2_unaligned () at ../sysdeps/x86_64/multiarch/strstr-sse2-unaligned.S:40 0x00000000004056bf in kvm_cmd_run_init (argc=, argv=) at builtin-run.c:608 0x000000000040639d in kvm_cmd_run (argc=, argv=, prefix=) at builtin-run.c:659 0x0000000000412b8f in handle_command (command=0x62bbc0 , argc=5, argv=0x7fffffffe840) at kvm-cmd.c:84 0x00007ffff7211b45 in __libc_start_main (main=0x403540
, argc=6, argv=0x7fffffffe838, init=, fini=, rtld_fini=, stack_end=0x7fffffffe828) at libc-start.c:287 0x0000000000403962 in _start () this patch suggests to set a minimal cmdline when kernel_cmdline is NULL Signed-off-by: William Dauchy --- builtin-run.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/builtin-run.c b/builtin-run.c index 6e4491c..929114e 100644 --- a/builtin-run.c +++ b/builtin-run.c @@ -605,7 +605,8 @@ static struct kvm *kvm_cmd_run_init(int argc, const char **argv) if (kvm_setup_guest_init(kvm->cfg.custom_rootfs_name)) die("Failed to setup init for guest."); } - } else if (!strstr(kvm->cfg.kernel_cmdline, "root=")) { + } else if (!kvm->cfg.kernel_cmdline || + !strstr(kvm->cfg.kernel_cmdline, "root=")) { strlcat(real_cmdline, " root=/dev/vda rw ", sizeof(real_cmdline)); }