From patchwork Sun Jul 12 19:26:21 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sriharsha Basavapatna X-Patchwork-Id: 1327587 Return-Path: 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.138; helo=whitealder.osuosl.org; envelope-from=ovs-dev-bounces@openvswitch.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=openvswitch.org Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=broadcom.com header.i=@broadcom.com header.a=rsa-sha256 header.s=google header.b=PtuV2yTu; dkim-atps=neutral Received: from whitealder.osuosl.org (smtp1.osuosl.org [140.211.166.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 4B4cGp04PSz9sR4 for ; Mon, 13 Jul 2020 05:26:57 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by whitealder.osuosl.org (Postfix) with ESMTP id 5078688FA6; Sun, 12 Jul 2020 19:26:56 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org Received: from whitealder.osuosl.org ([127.0.0.1]) by localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id AvkasPx0+eXI; Sun, 12 Jul 2020 19:26:53 +0000 (UTC) Received: from lists.linuxfoundation.org (lf-lists.osuosl.org [140.211.9.56]) by whitealder.osuosl.org (Postfix) with ESMTP id 4BB3088D69; Sun, 12 Jul 2020 19:26:53 +0000 (UTC) Received: from lf-lists.osuosl.org (localhost [127.0.0.1]) by lists.linuxfoundation.org (Postfix) with ESMTP id 0E9A0C0733; Sun, 12 Jul 2020 19:26:53 +0000 (UTC) X-Original-To: dev@openvswitch.org Delivered-To: ovs-dev@lists.linuxfoundation.org Received: from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133]) by lists.linuxfoundation.org (Postfix) with ESMTP id 3C60DC0733 for ; Sun, 12 Jul 2020 19:26:52 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by hemlock.osuosl.org (Postfix) with ESMTP id 2A52A898E6 for ; Sun, 12 Jul 2020 19:26:52 +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 YZz8Sc8k7hLA for ; Sun, 12 Jul 2020 19:26:51 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mail-pg1-f193.google.com (mail-pg1-f193.google.com [209.85.215.193]) by hemlock.osuosl.org (Postfix) with ESMTPS id 9A2B7898F0 for ; Sun, 12 Jul 2020 19:26:51 +0000 (UTC) Received: by mail-pg1-f193.google.com with SMTP id k27so5036775pgm.2 for ; Sun, 12 Jul 2020 12:26:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=g2Hzr1QIh/snTtVS/nS8x0xejT28b3l+gOnjaXfDllY=; b=PtuV2yTu4lS8ALSBOLhS+Dl2rv8coz3ZGgQQgaGc/bWsizDHvlkPQ15ZWPWMv8dnHY P6r1OExeXHYxT+R2QaJFFU+QA6BLPuMsginBly+XiBfo1N5gvB1ipM45vz/oxCrjpS70 HpOeDsS0lRA5ahwKjyVljzk1Ae2hN42E5raNk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=g2Hzr1QIh/snTtVS/nS8x0xejT28b3l+gOnjaXfDllY=; b=axqlVCzqcr2hSSIAMgPmjVBDT48fhlWwtaosrlddwtVvZOu1oo3fEEkvOPDHbfgYFQ ltH+4d5SBrQzQw7b+bg42VIDx7JotdPaW9Cdm/zugN3+DrWyu5uOigdgPMAmGSAH12ef Aac2qVh2gTDXJJBh+M+caTy7czA1KHRk9JtzXZZOzNNvrJrX+W4szcmkzO/AAlwEkXvf CMNCdcNVtXDgKHmkb+ecizFdprFELFxAJvu5zm4dYTqW1644AwCf+8cx+rbzmfCn87Km PaSKtyr4PzfX4ochhm48OA67c2QmVq4PzA2sHokzFoJzLKhSthRc/W1+xD3ybnMWtJEz 9ktQ== X-Gm-Message-State: AOAM530qqLK7lOgjVoT2vDqIXQlMmftNpZgbfv3H4CJaOvPm+JBLUgdg Ooxa2vrh3YAJKVQbxI9bj0s7AUIN/EfIsIh/3CYpc+Vqomy8wokbqvv2Y7zooYJiP8LyR5w4aPj KcR7jTGfMkTh/HJvtOzSfIYS+2vsCUpHI3NH7nTQdqATK4bYSjAsetIy/zo1vPAgAvKXyz2h+rO L5wA7I X-Google-Smtp-Source: ABdhPJyGyV1r+WZay+syN7XKYu7h/VT8HuqM3N0Pn7eYt3nifP2/GqCAvZ3NwjgkQ7MhA5nKw5su5A== X-Received: by 2002:a63:1a0c:: with SMTP id a12mr56540808pga.24.1594582010567; Sun, 12 Jul 2020 12:26:50 -0700 (PDT) Received: from dhcp-10-123-153-36.dhcp.broadcom.net ([192.19.234.250]) by smtp.gmail.com with ESMTPSA id 17sm9124023pjl.30.2020.07.12.12.26.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 12 Jul 2020 12:26:49 -0700 (PDT) To: dev@openvswitch.org Date: Sun, 12 Jul 2020 15:26:21 -0400 Message-Id: <20200712192625.7359-5-sriharsha.basavapatna@broadcom.com> X-Mailer: git-send-email 2.25.0.rc2 In-Reply-To: <20200712192625.7359-1-sriharsha.basavapatna@broadcom.com> References: <20200712192625.7359-1-sriharsha.basavapatna@broadcom.com> MIME-Version: 1.0 Subject: [ovs-dev] [PATCH v6 4/8] dpif-netdev: Support flow_get() with partial-action-offload X-BeenThere: ovs-dev@openvswitch.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Sriharsha Basavapatna via dev From: Sriharsha Basavapatna Reply-To: Sriharsha Basavapatna Errors-To: ovs-dev-bounces@openvswitch.org Sender: "dev" For flows that offload partial actions in egress direction, provide the right netdev to fetch statistics. Reviewed-by: Hemal Shah Signed-off-by: Sriharsha Basavapatna --- lib/dpif-netdev.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/dpif-netdev.c b/lib/dpif-netdev.c index c75a07c5e..2c20e6d5e 100644 --- a/lib/dpif-netdev.c +++ b/lib/dpif-netdev.c @@ -3197,8 +3197,14 @@ dpif_netdev_get_flow_offload_status(const struct dp_netdev *dp, return false; } - netdev = netdev_ports_get(netdev_flow->flow.in_port.odp_port, - dpif_normalize_type(dp->class->type)); + if (netdev_flow->partial_actions_offloaded && + netdev_flow->egress_offload_port != ODPP_NONE) { + netdev = netdev_ports_get(netdev_flow->egress_offload_port, + dpif_normalize_type(dp->class->type)); + } else { + netdev = netdev_ports_get(netdev_flow->flow.in_port.odp_port, + dpif_normalize_type(dp->class->type)); + } if (!netdev) { return false; }