From patchwork Wed Jan 20 19:17:10 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gregory Etelson X-Patchwork-Id: 87007 X-Patchwork-Delegate: rasland@nvidia.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id B8D7FA0A0A; Wed, 20 Jan 2021 20:17:35 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 946E5140E07; Wed, 20 Jan 2021 20:17:31 +0100 (CET) Received: from hqnvemgate24.nvidia.com (hqnvemgate24.nvidia.com [216.228.121.143]) by mails.dpdk.org (Postfix) with ESMTP id 4113E140DFD for ; Wed, 20 Jan 2021 20:17:30 +0100 (CET) Received: from hqpgpgate101.nvidia.com (Not Verified[216.228.121.13]) by hqnvemgate24.nvidia.com (using TLS: TLSv1.2, DES-CBC3-SHA) id ; Wed, 20 Jan 2021 11:17:29 -0800 Received: from HQMAIL107.nvidia.com ([172.20.161.6]) by hqpgpgate101.nvidia.com (PGP Universal service); Wed, 20 Jan 2021 11:17:29 -0800 X-PGP-Universal: processed; by hqpgpgate101.nvidia.com on Wed, 20 Jan 2021 11:17:29 -0800 Received: from nvidia.com (172.20.145.6) by HQMAIL107.nvidia.com (172.20.187.13) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 20 Jan 2021 19:17:27 +0000 From: Gregory Etelson To: CC: , , , Viacheslav Ovsiienko , Shahaf Shuler Date: Wed, 20 Jan 2021 21:17:10 +0200 Message-ID: <20210120191710.10195-2-getelson@nvidia.com> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210120191710.10195-1-getelson@nvidia.com> References: <20210120191710.10195-1-getelson@nvidia.com> MIME-Version: 1.0 X-Originating-IP: [172.20.145.6] X-ClientProxiedBy: HQMAIL105.nvidia.com (172.20.187.12) To HQMAIL107.nvidia.com (172.20.187.13) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nvidia.com; s=n1; t=1611170249; bh=pYedYK5TG+NTCh3bpO3rBduIsWqWzhyFKp55yiuJaag=; h=X-PGP-Universal:From:To:CC:Subject:Date:Message-ID:X-Mailer: In-Reply-To:References:MIME-Version:Content-Transfer-Encoding: Content-Type:X-Originating-IP:X-ClientProxiedBy; b=nkSrj1ofrr/vCYplKOi9KVYjPLOotHRKUwbBMGpB62EjvSBi76Wt7eMw9rYCP/eOA tEK1vJfbUkM/HZFQ6C4umRBppYg5vsOrZkNl6cC2FSaX/KfNE9Hc5PcT90CAZjZHI/ ZuCwJiMqfm6BohI4uBm135EGOrmRplThXJXZ4siTpM1sKZ0zkPAFXzw0q9/a1ApCS0 GoUikTOixV5vspxwbAe7jwXwrnf/uQ/J7HLTlWqwPZzEqlUVtPiU9p4H60wZTQ07Jh XdtNSgrhRkt8BpPcOHGu1UfBGciq/0TD5TB9EEUAyD8ai5uzec95ArSpLJLW9Ah6KL UuRT0X5k87oTA== Subject: [dpdk-dev] [PATCH 2/2] net/mlx5: fix DROP action in tunnel offload mode X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Tunnel offload mode allows application to restore partially offloaded tunneled packets to its original state. The mode was designed to optimize packet recovery. It must not block flow actions that are allowed by MLX5 PMD. The patch allows tunnel offload match rules to use drop flow action. Signed-off-by: Gregory Etelson Acked-by: Viacheslav Ovsiienko --- drivers/net/mlx5/mlx5_flow_dv.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c index ede484d026..bb3af246cd 100644 --- a/drivers/net/mlx5/mlx5_flow_dv.c +++ b/drivers/net/mlx5/mlx5_flow_dv.c @@ -6087,8 +6087,11 @@ flow_dv_validate(struct rte_eth_dev *dev, const struct rte_flow_attr *attr, * Validate the drop action mutual exclusion with other actions. * Drop action is mutually-exclusive with any other action, except for * Count action. + * Drop action compatibility with tunnel offload was already validated. */ - if ((action_flags & MLX5_FLOW_ACTION_DROP) && + if (action_flags & (MLX5_FLOW_ACTION_TUNNEL_MATCH | + MLX5_FLOW_ACTION_TUNNEL_MATCH)); + else if ((action_flags & MLX5_FLOW_ACTION_DROP) && (action_flags & ~(MLX5_FLOW_ACTION_DROP | MLX5_FLOW_ACTION_COUNT))) return rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_ACTION, NULL,