From patchwork Thu Nov 1 16:30:37 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 149979 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp999851ljp; Thu, 1 Nov 2018 09:32:21 -0700 (PDT) X-Google-Smtp-Source: AJdET5dHFu66OYkJvvc5sqepixlUWLQkUK8x1Pxf6dh6wv3eEr4hgxClGsO+3EJugq3jAfapcu3D X-Received: by 2002:a0c:e202:: with SMTP id q2mr7200716qvl.180.1541089941525; Thu, 01 Nov 2018 09:32:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1541089941; cv=none; d=google.com; s=arc-20160816; b=Z80qC208pOskxTLPQQjh60pPPlkHlaMi7m460pMwMRYXXSPOja+dO3ZitAOSYg95UA N0Gu+W1M0JyMuy0pYwkdY5K0m+vT9oJGcKz3CI6hR9zXJoX+ac1bE/9LgeI/Lf2Of8c7 VdCh5MclucBlS03a/HmFMRmbWZC60LUSfnhmDcfqeh6sFR+bwltCboJD76Tts53uzY+i nT4KpPRSZh/tRBVJRq6Q7mA5chCipwLkHyG/Lq4pistO0Wna4qaz9hOUle9a4S7GrG6X NH23/bpuXwe4AWMwNu5q7rGsmZ6ZQndM72EyFO6jawX2KzJzfSoKkXy83S1ZnPNQpGid sFxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject :content-transfer-encoding:mime-version:message-id:date:to:from; bh=16jVHgLID/QuX18GIeh6Dahrxy57TN3MX+b693+JCbc=; b=x4cOsn/aj1l//WjdOaz4oTqT6esuAY/tACBU9iG6R6KN8GSXOc6fXDHhDHSrPx2/D/ 2dpVS+BrUleCBui0HW8QLGGkQkeI3qrpL4BsFxZIt1cyb2OZiU4/Zsq8go3dAWr1KUC3 U/bGwmObMUTB6QKctrUZb0KRa2h99bPio4kAbBFAy3T58IRWeyMZrOIfTjEofxPfnQIw XvwouSSTsNzCn7J8OLp/+QckIKDDpLWbKA7qhxTpuiojkVCEv3d90mhh1IrNuvYdgYDH 5HENaJJK5ssUbNLLET/qcp0Kdu8SLdW69RhUsux9pCzxc5uKyazFjcXUYTQIxLEPrypt tFsQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id x17si402037qvp.78.2018.11.01.09.32.21 for (version=TLS1 cipher=AES128-SHA bits=128/128); Thu, 01 Nov 2018 09:32:21 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:43000 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gIFtN-0007vE-2P for patch@linaro.org; Thu, 01 Nov 2018 12:32:21 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:51017) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gIFro-0007Jt-Mo for qemu-devel@nongnu.org; Thu, 01 Nov 2018 12:30:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gIFrn-0001uy-RF for qemu-devel@nongnu.org; Thu, 01 Nov 2018 12:30:44 -0400 Received: from orth.archaic.org.uk ([2001:8b0:1d0::2]:52196) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gIFrn-0001pu-HO; Thu, 01 Nov 2018 12:30:43 -0400 Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1gIFrj-0002s8-DQ; Thu, 01 Nov 2018 16:30:39 +0000 From: Peter Maydell To: qemu-devel@nongnu.org Date: Thu, 1 Nov 2018 16:30:37 +0000 Message-Id: <20181101163037.800-1-peter.maydell@linaro.org> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2001:8b0:1d0::2 Subject: [Qemu-devel] [PATCH for-3.1] blockdev: Consistently use snapshot_node_name in external_snapshot_prepare() X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Markus Armbruster , qemu-block@nongnu.org, Max Reitz Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" In the function external_snapshot_prepare() we have a BlockdevSnapshotSync struct, which has the usual combination of has_snapshot_node_name and snapshot_node_name fields for an optional field. We set up a local variable const char *snapshot_node_name = s->has_snapshot_node_name ? s->snapshot_node_name : NULL; and then mostly use "if (!snapshot_node_name)" for checking whether we have a snapshot node name. The exception is that in one place we check s->has_snapshot_node_name instead. This confuses Coverity (CID 1396473), which thinks it might be possible to get here with s->has_snapshot_node_name true but snapshot_node_name NULL, and warns that the call to qdict_put_str() will segfault in that case. Make the code consistent and unconfuse Coverity by using the same check for this conditional that we do in the rest of the surrounding code. Signed-off-by: Peter Maydell --- Disclaimer: tested only with "make check"... blockdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.19.1 Reviewed-by: Alberto Garcia diff --git a/blockdev.c b/blockdev.c index 574adbcb7f5..b24610c606e 100644 --- a/blockdev.c +++ b/blockdev.c @@ -1639,7 +1639,7 @@ static void external_snapshot_prepare(BlkActionState *common, } options = qdict_new(); - if (s->has_snapshot_node_name) { + if (snapshot_node_name) { qdict_put_str(options, "node-name", snapshot_node_name); } qdict_put_str(options, "driver", format);