[{"id":3683880,"web_url":"http://patchwork.ozlabs.org/comment/3683880/","msgid":"<708ac3f4-bb55-459a-9506-77751133c973@linaro.org>","list_archive_url":null,"date":"2026-04-29T08:04:27","subject":"Re: [PATCH 3/3] system/vl.c: inline qemu_opts_parse_noisily() result\n checks","submitter":{"id":85046,"url":"http://patchwork.ozlabs.org/api/people/85046/","name":"Philippe Mathieu-Daudé","email":"philmd@linaro.org"},"content":"On 29/4/26 08:20, Bin Guo wrote:\n> In qemu_init()'s option parsing switch, several cases assigned the\n> return value of qemu_opts_parse_noisily() to the shared 'opts'\n> variable solely to check for NULL, without using the pointer\n> afterwards.  Inline the call directly into the if-condition, matching\n> the style already used by QEMU_OPTION_action.\n> \n> This affects the following options:\n>    -drive, -numa, -iscsi, -m, -mon, -chardev, -fsdev, -fwcfg\n> \n> Cases where the returned QemuOpts* is subsequently used (e.g.\n> -acpitable, -smbios, -virtfs) are left unchanged.\n> \n> Signed-off-by: Bin Guo <guobin@linux.alibaba.com>\n> ---\n>   system/vl.c | 37 +++++++++++++++----------------------\n>   1 file changed, 15 insertions(+), 22 deletions(-)\n> \n> diff --git a/system/vl.c b/system/vl.c\n> index 0e1fc217b4..0e0d3cb761 100644\n> --- a/system/vl.c\n> +++ b/system/vl.c\n> @@ -2961,9 +2961,8 @@ void qemu_init(int argc, char **argv)\n>                       break;\n>                   }\n>               case QEMU_OPTION_drive:\n> -                opts = qemu_opts_parse_noisily(qemu_find_opts(\"drive\"),\n> -                                               optarg, false);\n> -                if (opts == NULL) {\n> +                if (!qemu_opts_parse_noisily(qemu_find_opts(\"drive\"),\n> +                                             optarg, false)) {\n>                       exit(1);\n>                   }\n>                   break;\n\nFor clarity I'd also squash in this patch:\n\n-- >8 --\ndiff --git a/system/vl.c b/system/vl.c\nindex cab8106984a..237334236aa 100644\n--- a/system/vl.c\n+++ b/system/vl.c\n@@ -2842,3 +2842,2 @@ void qemu_init(int argc, char **argv)\n  {\n-    QemuOpts *opts;\n      QemuOpts *icount_opts = NULL, *accel_opts = NULL;\n@@ -2921,2 +2920,4 @@ void qemu_init(int argc, char **argv)\n      for(;;) {\n+        QemuOpts *opts;\n+\n          if (optind >= argc)\n---\n\nReviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>","headers":{"Return-Path":"<qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=PVlrocXD;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=nongnu.org\n (client-ip=209.51.188.17; helo=lists1p.gnu.org;\n envelope-from=qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from lists1p.gnu.org (lists1p.gnu.org [209.51.188.17])\n\t(using TLSv1.2 with cipher ECDHE-ECDSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4g58wn1NBDz1yHX\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 29 Apr 2026 18:04:57 +1000 (AEST)","from localhost ([::1] helo=lists1p.gnu.org)\n\tby lists1p.gnu.org with esmtp (Exim 4.90_1)\n\t(envelope-from <qemu-devel-bounces@nongnu.org>)\n\tid 1wHzuM-0005xF-Ki; Wed, 29 Apr 2026 04:04:34 -0400","from eggs.gnu.org ([2001:470:142:3::10])\n by lists1p.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wHzuL-0005wp-7b\n for qemu-devel@nongnu.org; Wed, 29 Apr 2026 04:04:33 -0400","from mail-wm1-x32a.google.com ([2a00:1450:4864:20::32a])\n by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)\n (Exim 4.90_1) (envelope-from <philmd@linaro.org>) id 1wHzuJ-0006Hy-Iz\n for qemu-devel@nongnu.org; Wed, 29 Apr 2026 04:04:32 -0400","by mail-wm1-x32a.google.com with SMTP id\n 5b1f17b1804b1-4891c0620bcso84825695e9.1\n for <qemu-devel@nongnu.org>; Wed, 29 Apr 2026 01:04:30 -0700 (PDT)","from [192.168.69.210] (88-187-86-199.subs.proxad.net.\n [88.187.86.199]) by smtp.gmail.com with ESMTPSA id\n 5b1f17b1804b1-48a7bc87e46sm39165085e9.15.2026.04.29.01.04.28\n (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);\n Wed, 29 Apr 2026 01:04:28 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=linaro.org; s=google; t=1777449869; x=1778054669; darn=nongnu.org;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :from:to:cc:subject:date:message-id:reply-to;\n bh=/ZRgCv1IXYdXB1Opl0lxnNpiSg2MAr0D0jxwTLYnBhI=;\n b=PVlrocXDoUbxejP5C6JCYNG71yU2SNTZG6ntqckklWQsPtzdOzqDKNZL8sDZ+xgyzE\n cAS8hMWTF2MVKqSf2sePSkZR4tknAiwvgCkwZl4suwVbnQEQ2TLC2hZKePH8xCKcqLFq\n +O5e5xvm41wOqs3TUk6S6gMz2IZ2Ed9iJEDorBANLbjiqfT0cDezmhn88T+cmT2Xiv6p\n NYZ00OX3X0dSSQdoqug9PvY8x04LaRnxZKGOaYXNeL/trphmEnkrywt6VodRySj8nicY\n vjkutETcjZIvcg+YcgrvJ6KAw9qzQ5MXmEa0fWoNRlBZyFBBL0HbxrQLVubUcEWpbwL+\n uj4g==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1777449869; x=1778054669;\n h=content-transfer-encoding:in-reply-to:from:references:cc:to\n :content-language:subject:user-agent:mime-version:date:message-id\n :x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id\n :reply-to;\n bh=/ZRgCv1IXYdXB1Opl0lxnNpiSg2MAr0D0jxwTLYnBhI=;\n b=k5DsOYXhDfUEHavuPuLyHMCVuxM50bQnTINhU1Ez53mSANmCiSrJ+0gHeKkhiPW0mV\n 8Kqa0vjRIEklo75UDmjszoLlY+N0VrjPazHzAMSnqkYnmwvf6EdTkAh+jUEHTH022ao7\n Z2jkx6nF5eMbQ4jatjAptVBT7ybXGP6BNl7GsKjtVYvzyc5bC1hhPcCKAa/pU/WsgrNj\n D0w+fqf0Oa/DxmveN+NXeSe3B2LmYFz220k3WjWcOXen4wFmK7QEyfRNLp3R7+zD0nKn\n MInCuPBW73gOFgDw4tBfgNX8yuAEU288zjXBU+xSLBPQ0Pc4Hwrf271dNCSO1Qp4iyUQ\n YxaQ==","X-Forwarded-Encrypted":"i=1;\n AFNElJ/VuO8yMG1xdEk9S/kXcIukFP8Q/TJlESDCWWpb81aTrkcjsJLxP5K1ugAhEy6NZh9hSZmJdYluRraD@nongnu.org","X-Gm-Message-State":"AOJu0YyTJ7M/ebBgFuRz/hJfd9FXCL6GoEDO9KtefmQGbHuDNAj0KDok\n EvNuelqfho4/SX+cFsMmuv6rI95nLYGyeK75a8VEWoTadlvLt0/MSYxTI0A6TSJVOTA=","X-Gm-Gg":"AeBDievxNZbb/E54TejlejI8N8seI3jMtoXlqFENoDjn8zehEoUxLvsBjT4a9myWnx7\n xzy7a/iF1tjOuhb4Uj3Lc8tM+L09zM1pukCRm2yG/krH430vbELhDeu1YWPLrKH8m0Mk1q2h6Og\n nHWObfwEolIDaE2wI8su9KAs2P3riik6e6XrWrVaHQwsFJXYvCtLTpf2+gYVL6BfLnb/tMn/And\n iMU9F7IXF0+LrkWKD+SG1lCHaraQpbKcV7wZp0EzqxOVKbOaXxgJHBSQyKbnx2LWfNNEfC+qg0M\n 9oS66NMrtdMASiAK2GG/wxG7zDc15Z5UiwTemOJhCyBItmXfUXzMJg8X7l2vqfjaGEQhuiOAzAv\n 1UHPU4ARohK1v3A5c6T87kmOZSP7pvg0Q/KU5/YIghRdP56+tZTMXImZW4HPrH58GaFS51L/8Tt\n CqrBIfT84PrhWWLOkCTNxVN34WPI3xAOcZwxcTZ9lFfQMsQrnzhn6dHgpw3k9/gS5sUiNBbAtCO\n 7VA","X-Received":"by 2002:a05:600c:8b04:b0:485:2a85:e5ec with SMTP id\n 5b1f17b1804b1-48a77ae03ffmr94237545e9.2.1777449869359;\n Wed, 29 Apr 2026 01:04:29 -0700 (PDT)","Message-ID":"<708ac3f4-bb55-459a-9506-77751133c973@linaro.org>","Date":"Wed, 29 Apr 2026 10:04:27 +0200","MIME-Version":"1.0","User-Agent":"Mozilla Thunderbird","Subject":"Re: [PATCH 3/3] system/vl.c: inline qemu_opts_parse_noisily() result\n checks","Content-Language":"en-US","To":"Bin Guo <guobin@linux.alibaba.com>, qemu-devel@nongnu.org","Cc":"pbonzini@redhat.com, berrange@redhat.com, kwolf@redhat.com,\n hreitz@redhat.com, qemu-block@nongnu.org","References":"<20260429062004.36582-1-guobin@linux.alibaba.com>\n <20260429062004.36582-4-guobin@linux.alibaba.com>","From":"=?utf-8?q?Philippe_Mathieu-Daud=C3=A9?= <philmd@linaro.org>","In-Reply-To":"<20260429062004.36582-4-guobin@linux.alibaba.com>","Content-Type":"text/plain; charset=UTF-8; format=flowed","Content-Transfer-Encoding":"8bit","Received-SPF":"pass client-ip=2a00:1450:4864:20::32a;\n envelope-from=philmd@linaro.org; helo=mail-wm1-x32a.google.com","X-Spam_score_int":"-20","X-Spam_score":"-2.1","X-Spam_bar":"--","X-Spam_report":"(-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,\n DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,\n RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,\n SPF_PASS=-0.001 autolearn=ham autolearn_force=no","X-Spam_action":"no action","X-BeenThere":"qemu-devel@nongnu.org","X-Mailman-Version":"2.1.29","Precedence":"list","List-Id":"qemu development <qemu-devel.nongnu.org>","List-Unsubscribe":"<https://lists.nongnu.org/mailman/options/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe>","List-Archive":"<https://lists.nongnu.org/archive/html/qemu-devel>","List-Post":"<mailto:qemu-devel@nongnu.org>","List-Help":"<mailto:qemu-devel-request@nongnu.org?subject=help>","List-Subscribe":"<https://lists.nongnu.org/mailman/listinfo/qemu-devel>,\n <mailto:qemu-devel-request@nongnu.org?subject=subscribe>","Errors-To":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org","Sender":"qemu-devel-bounces+incoming=patchwork.ozlabs.org@nongnu.org"}}]