Message ID | 20200902184517.937519-1-numans@ovn.org |
---|---|
Headers | show
Return-Path: <ovs-dev-bounces@openvswitch.org> X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=openvswitch.org (client-ip=140.211.166.133; helo=hemlock.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=<UNKNOWN>) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=ovn.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4BhXv76XpXz9sSP for <incoming@patchwork.ozlabs.org>; Thu, 3 Sep 2020 04:45:39 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 1FFB2872B9; Wed, 2 Sep 2020 18:45:38 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from hemlock.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id a3qmmipQbJtW; Wed, 2 Sep 2020 18:45:37 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by hemlock.osuosl.org (Postfix) with ESMTP id 387AF871DF; Wed, 2 Sep 2020 18:45:37 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 1E529C07FF; Wed, 2 Sep 2020 18:45:37 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137]) by lists.linuxfoundation.org (Postfix) with ESMTP id E2FCCC0051 for <dev@openvswitch.org>; Wed, 2 Sep 2020 18:45:35 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by fraxinus.osuosl.org (Postfix) with ESMTP id CFDE586B18 for <dev@openvswitch.org>; Wed, 2 Sep 2020 18:45:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from fraxinus.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id aFBuh63Cxr-8 for <dev@openvswitch.org>; Wed, 2 Sep 2020 18:45:35 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from relay4-d.mail.gandi.net (relay4-d.mail.gandi.net [217.70.183.196]) by fraxinus.osuosl.org (Postfix) with ESMTPS id C7F7086B16 for <dev@openvswitch.org>; Wed, 2 Sep 2020 18:45:34 +0000 (UTC) X-Originating-IP: 115.99.211.114 Received: from nusiddiq.home.org.com (unknown [115.99.211.114]) (Authenticated sender: numans@ovn.org) by relay4-d.mail.gandi.net (Postfix) with ESMTPSA id 7D7E2E0006; Wed, 2 Sep 2020 18:45:30 +0000 (UTC) From: numans@ovn.org To: dev@openvswitch.org Date: Thu, 3 Sep 2020 00:15:17 +0530 Message-Id: <20200902184517.937519-1-numans@ovn.org> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Subject: [ovs-dev] [PATCH ovn 0/4] Another attempt on lflow expr caching. X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: <ovs-dev.openvswitch.org> List-Unsubscribe: <https://mail.openvswitch.org/mailman/options/ovs-dev>, <mailto:ovs-dev-request@openvswitch.org?subject=unsubscribe> List-Archive: <http://mail.openvswitch.org/pipermail/ovs-dev/> List-Post: <mailto:ovs-dev@openvswitch.org> List-Help: <mailto:ovs-dev-request@openvswitch.org?subject=help> List-Subscribe: <https://mail.openvswitch.org/mailman/listinfo/ovs-dev>, <mailto:ovs-dev-request@openvswitch.org?subject=subscribe> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" <ovs-dev-bounces@openvswitch.org> |
Series |
Another attempt on lflow expr caching.
|
expand
|
From: Numan Siddique <numans@ovn.org> This patch series adds caching of logical flow expr matches/expr tree so that whenever a logical flow is processed, we can reuse the cached expr tree of expr matches. The expr matches/tree is not cached for a logical flow referencing port group/address sets as it is tricky to handle any port group changes if cached. The patch 2 of this series was submitted separately earlier. Patch 2 uses the lflow caching approach to cache the conjunction ids so that these ids are persistent across recomputes. Numan Siddique (4): I-P engine: Provide the option to store client data in engine ctx. ovn-controller: Persist the conjunction ids allocated for conjuctive matches. expr: Evaluate the condition expression in a separate step. ovn-controller: Cache logical flow expr matches. controller/chassis.c | 22 +- controller/lflow.c | 516 +++++++++++++++++++++++++++--------- controller/lflow.h | 8 +- controller/ovn-controller.c | 97 ++++++- include/ovn/expr.h | 10 +- lib/expr.c | 57 +++- lib/inc-proc-eng.h | 1 + tests/ovn.at | 135 ++++++++++ tests/test-ovn.c | 12 +- utilities/ovn-trace.c | 6 +- 10 files changed, 705 insertions(+), 159 deletions(-)