From patchwork Wed Nov 1 00:29:50 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: William Tu X-Patchwork-Id: 832795 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="bfY9zan6"; dkim-atps=neutral Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yRTdF6j8Qz9sP1 for ; Wed, 1 Nov 2017 11:30:09 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id 06F74D5D; Wed, 1 Nov 2017 00:30:07 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 5F149D40 for ; Wed, 1 Nov 2017 00:30:05 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-pg0-f67.google.com (mail-pg0-f67.google.com [74.125.83.67]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 171D2557 for ; Wed, 1 Nov 2017 00:30:05 +0000 (UTC) Received: by mail-pg0-f67.google.com with SMTP id 15so634120pgc.12 for ; Tue, 31 Oct 2017 17:30:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=PRQfRUZOCq+MJQTWNZOI7cYSqDj75d50GeYhCLpJQKw=; b=bfY9zan6CCF/zr7u+z2oux1BoL1Aay9TAlYGFgfPsLVdJBz/CI49ZXpyBnDOVMh/Us KUDbqzgX+jr6LmTLgE0aWTuiQJfD4Uhzf3hh2prFSKOyGry2Fp4JEnk0Cd2VHD9aGP4T CdyGCvy0kvsDQ5lPHBexOsQ5QSgPJ1x2xd05IIbQtRVDlkC9ecJzRLutQaiKU12qcUZU s2Lrbk3ZtlrovYRCQNrDykkjmMKE/EFZkqMHZf9auXcjefFhDNo6DIjguNrmFEhOQGZj pO9wf7AwXDoBb2gRs39IWka1brm+GP43SEEqRLRLyKqCdRufpYwfyGFsBfPVvoHByvkA NdDA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=PRQfRUZOCq+MJQTWNZOI7cYSqDj75d50GeYhCLpJQKw=; b=raKGNsBo41JxpSbRXTGPUVElEcwfdS7K+pYn0rvdTh9H1atJsKSh+xlVmgLcV2y4UL YxN19FVIO0z/XQTrbR1s0klSzCQBtWj6UFJ1nzZ8/7vG4cBmWaxTMDKhhLT8DhQgXObm ccNRQbwiRte95f/LuGVhUbmsV2pvx3jWsAb5yR+YQOS8ZQZNWzSYhnf8pRoeuzk/PQdE EXBYnST3FsLq41IEmYSaSSB78UVFk6m6xQCOjwHPjl/dp2p5/TKosy2QgejXUKYZ1Sq2 V8c+2mGKib7RX9wKxVUjYyxDMumtZI/NmM6rUuAyNqaDPp4cnd3V/sfD5jKCER/SkKw7 tUeA== X-Gm-Message-State: AMCzsaVhUK8/6qIfvnpMJPmkwVq1be3lcxRilbqvY/zQ6uIARTF60pZR 8ZaZLg7z7vKK4IlBGyaB//pnT0OH X-Google-Smtp-Source: ABhQp+RSNcJNjd+xrA/bcCRubDSK8y8vE4fChYZG5+eKVZybHGx/1a1ugRg7rv7r96oPue1wJ+qdKA== X-Received: by 10.99.175.80 with SMTP id s16mr3726440pgo.161.1509496204605; Tue, 31 Oct 2017 17:30:04 -0700 (PDT) Received: from localhost.localdomain ([24.5.191.4]) by smtp.gmail.com with ESMTPSA id d74sm5636573pfe.167.2017.10.31.17.30.03 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 31 Oct 2017 17:30:03 -0700 (PDT) From: William Tu To: ovs-dev@openvswitch.org Date: Tue, 31 Oct 2017 17:29:50 -0700 Message-Id: <1509496191-28209-1-git-send-email-u9012063@gmail.com> X-Mailer: git-send-email 2.7.4 X-Spam-Status: No, score=0.2 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE autolearn=disabled version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCHv2 1/2] ofproto-dpif-xlate: Fix bad memory free. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org Clang reports possibly bad free of 'ofm' when it comes from the stack instead of malloc because Clang is not able to verify whether the previous if condition 'ctx->xin->xcache' still hold the same. Fix it by adding additional condition. Signed-off-by: William Tu --- ofproto/ofproto-dpif-xlate.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ofproto/ofproto-dpif-xlate.c b/ofproto/ofproto-dpif-xlate.c index d0b45d233e69..667960d70389 100644 --- a/ofproto/ofproto-dpif-xlate.c +++ b/ofproto/ofproto-dpif-xlate.c @@ -5131,7 +5131,7 @@ xlate_learn_action(struct xlate_ctx *ctx, const struct ofpact_learn *learn) } } - if (ctx->xin->xcache) { + if (ofm != &ofm__) { free(ofm); } From patchwork Wed Nov 1 00:29:51 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: William Tu X-Patchwork-Id: 832796 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=openvswitch.org (client-ip=140.211.169.12; helo=mail.linuxfoundation.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="ND49SMXx"; dkim-atps=neutral Received: from mail.linuxfoundation.org (mail.linuxfoundation.org [140.211.169.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3yRTdp4kv6z9t3r for ; Wed, 1 Nov 2017 11:30:38 +1100 (AEDT) Received: from mail.linux-foundation.org (localhost [127.0.0.1]) by mail.linuxfoundation.org (Postfix) with ESMTP id F2C00D59; Wed, 1 Nov 2017 00:30:07 +0000 (UTC) X-Original-To: ovs-dev@openvswitch.org Delivered-To: ovs-dev@mail.linuxfoundation.org Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 59A55D52 for ; Wed, 1 Nov 2017 00:30:06 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-pg0-f68.google.com (mail-pg0-f68.google.com [74.125.83.68]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 1571650A for ; Wed, 1 Nov 2017 00:30:06 +0000 (UTC) Received: by mail-pg0-f68.google.com with SMTP id b192so659695pga.2 for ; Tue, 31 Oct 2017 17:30:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id:in-reply-to:references; bh=oe8SREGHo2TfLqwmU/FoaPmQVQmVwDhgca/VdJDvnes=; b=ND49SMXx5L6tkqmAJ6FX1k4mx2K+ev597+ztciQVdyFiSuY6z0ZVJW8cdk0tEgr8PC sPqw8XN2XYG2rocGN2CjuZEjKi9ci8bjMRjGNzcHcZ6ZjE/0gQx5ZYtAJ/RFDF+7E06a ggfCeL9ql1SN+c7VMuE/bVaZ8dTnJjqSWvU3EGJBeR2p/2dNh8Ihojz2VgODmYrL0LLa cJaQdjDBpojpATJxPJ7A+avHtglZ4jgO5KE9WyrrmwkWbUGKRny2IfWu9gczjCmv4YAE fnYIP1sA9zWd+8qGenft9ZI39GbgJ5DZx3RwvWvttASv2pAL1cah2XhlbhJqYt4ls24j 5QvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=oe8SREGHo2TfLqwmU/FoaPmQVQmVwDhgca/VdJDvnes=; b=EyqPwrLCh1m4AHjABVJbZh0cHmT1NAWPb1j5GChinbgO8rTkFigndDQg7XOpkIY0ra 0cdCkIfvZLCBfhussVDWPbmSj9GtEiA1Ed9OrI4a9LDs0DGjAWlpyrXRq/IvicTCrheV pBZgt59KEgXR6ntivGPtHjCNLKM1uuu26F0kZrGHaLbnFXGzcZDnaRi3lSvAcBzOdQOU mqZVmyzrZPdJRdsTuATjHofaUuvkS1uCxgFUGGfSdpVhdI0PM9jP4GPQbJvH6dDWnjGW hmHVZ/p+SN9dfRZdYYHByybB9A93CcJ8X5fO4zT+Vrdw3kSjVDAYUzTF5kvBijo2ZadA F4Fg== X-Gm-Message-State: AMCzsaUINloYj0ua8lSQ0m57NO6EgBPrKoGSgjZlfFx/cr0V8BWsrkHQ M7BbOtOHSkmsaWSmK9z60t3rm3h3 X-Google-Smtp-Source: ABhQp+Rg35Tod1DPyyjpydh2t7UspG7lKv/U8mGZAvQoaTqWv8TG+6+4oAXU//PcIrvEZx8r7QzYlA== X-Received: by 10.101.66.135 with SMTP id j7mr3556322pgp.39.1509496205525; Tue, 31 Oct 2017 17:30:05 -0700 (PDT) Received: from localhost.localdomain ([24.5.191.4]) by smtp.gmail.com with ESMTPSA id d74sm5636573pfe.167.2017.10.31.17.30.04 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 31 Oct 2017 17:30:04 -0700 (PDT) From: William Tu To: ovs-dev@openvswitch.org Date: Tue, 31 Oct 2017 17:29:51 -0700 Message-Id: <1509496191-28209-2-git-send-email-u9012063@gmail.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1509496191-28209-1-git-send-email-u9012063@gmail.com> References: <1509496191-28209-1-git-send-email-u9012063@gmail.com> X-Spam-Status: No, score=0.7 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM autolearn=disabled version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: [ovs-dev] [PATCHv2 2/2] ovn-sbctl: Fix possible null pointer to qsort. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: ovs-dev-bounces@openvswitch.org Errors-To: ovs-dev-bounces@openvswitch.org Clang reports possible null pointer 'lflows' passed to qsort. This is due to the checker unable to make sure whether 'lflows' gets malloc or not in the previous loop. Fix it by checking the 'n_flows' before calling qsort. Signed-off-by: William Tu --- ovn/utilities/ovn-sbctl.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ovn/utilities/ovn-sbctl.c b/ovn/utilities/ovn-sbctl.c index c5ec4e6eaf24..6f3743b55632 100644 --- a/ovn/utilities/ovn-sbctl.c +++ b/ovn/utilities/ovn-sbctl.c @@ -860,7 +860,10 @@ cmd_lflow_list(struct ctl_context *ctx) lflows[n_flows] = lflow; n_flows++; } - qsort(lflows, n_flows, sizeof *lflows, lflow_cmp); + + if (n_flows) { + qsort(lflows, n_flows, sizeof *lflows, lflow_cmp); + } bool print_uuid = shash_find(&ctx->options, "--uuid") != NULL;