From patchwork Wed Jan 16 13:50:06 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tonghao Zhang X-Patchwork-Id: 1026429 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="rv7UtTmi"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 43gFjC0hctz9sCh for ; Thu, 17 Jan 2019 18:15:43 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728497AbfAQHPl (ORCPT ); Thu, 17 Jan 2019 02:15:41 -0500 Received: from mail-pf1-f196.google.com ([209.85.210.196]:45394 "EHLO mail-pf1-f196.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725933AbfAQHPl (ORCPT ); Thu, 17 Jan 2019 02:15:41 -0500 Received: by mail-pf1-f196.google.com with SMTP id g62so4363049pfd.12 for ; Wed, 16 Jan 2019 23:15:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=fB01WWss8JFhp0iv3M3dUFrPJpHSWQSY3usxqPm950o=; b=rv7UtTmiJwerckzYi9qa8XYVitUNrwLGPo4jHfE0hBSxH99a/yKPJmWovq9+9fPW5c fxrtorSfRuGCKTu9SjFVUaSNV2uZTEBAdBvQVPRIK0+fo+WpzQDkF92F/nzzcaaQNnZp X4v7w6VlYIJwfKertmW3XULG+8o0qnUelQG1FtMvDwvkRYEqUnSqJqlANr/Yvwb6ChqB KVquz9nxy56QnwET3UjQCWZVW2ylfgnvHje6wWD/N3tHPq3nzx93k5oJ++eVvZH7Ly6u JYzypkSuEQewYdVoDapTdyrghwFZ3cBXQEE6Bqm3KsqVMWAQPMho6I3RJGOnhynxV8OJ VNEA== 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; bh=fB01WWss8JFhp0iv3M3dUFrPJpHSWQSY3usxqPm950o=; b=sgbyeEfoH3wTe4HPP11+LxLeLwSWYqd3uXGB08HH/xJhQ8INsKhNPmAtRN16/NROf7 vFAIxwSOETs1PJ4nQOZYbu3LLJrBrj5RZGALmuBey1kRjysL/sg3VD3iLCJisNf4+FWp u4NZHh3qqDA3Hv8zYOhEqq7gJeh2VL5mhPJCVW6Hz3nTGz+kUP/I7KoCtYa+tHMegvT/ 5rZCujgMV6XfSTRdyGUUF1/MLqgBTbuGixde2PDlngyTq4S+eWenc1lf2Q+kt7YWmN3G Kpexneg/JHkT5+jsPMR5ipI/IOElgC2iAR9lVYm6/d9dEbJQO34wlEUzx1r7AyJokoR/ QJCg== X-Gm-Message-State: AJcUukfTJ27VtpgS+kjoSvDxxrJcNEz1rYiOOyRpbhyumWN/GOZV7rOq atEpw5DmcPez0qkTE96oI6Y= X-Google-Smtp-Source: ALg8bN4SeB9y94x4l+me+B0jj1xhWbs1FAPp9Hs1/2gpNxU+nOve0VCOwfF8qDv3wc3YmsSG3mfQuA== X-Received: by 2002:a63:c451:: with SMTP id m17mr12389153pgg.27.1547709340873; Wed, 16 Jan 2019 23:15:40 -0800 (PST) Received: from local.opencloud.tech.localdomain ([203.100.54.194]) by smtp.gmail.com with ESMTPSA id b27sm1254340pfh.113.2019.01.16.23.15.38 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 16 Jan 2019 23:15:40 -0800 (PST) From: xiangxia.m.yue@gmail.com To: ogerlitz@mellanox.com, saeedm@mellanox.com, leonro@mellanox.com Cc: netdev@vger.kernel.org, Tonghao Zhang Subject: [PATCH] net: mlx5: allow default ip_proto to offload Date: Wed, 16 Jan 2019 05:50:06 -0800 Message-Id: <1547646606-16687-1-git-send-email-xiangxia.m.yue@gmail.com> X-Mailer: git-send-email 1.8.3.1 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Tonghao Zhang Allow default ip_proto to offload, so icmp, tcp, and udp will match the flow as show below, otherwise we must type the ip_proto for icmp, tcp and udp respectively. $ tc filter add dev netdev01_rep parent ffff: protocol ip prio 1 \ flower skip_sw dst_ip 3.3.3.3 \ action pedit ex munge ip dst set 192.168.1.100 pipe \ action csum ip pipe \ action mirred egress redirect dev netdev02_rep Signed-off-by: Tonghao Zhang --- drivers/net/ethernet/mellanox/mlx5/core/en_tc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c index 2ee377a..2a29428 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_tc.c @@ -2219,7 +2219,7 @@ static bool modify_header_match_supported(struct mlx5_flow_spec *spec, } ip_proto = MLX5_GET(fte_match_set_lyr_2_4, headers_v, ip_protocol); - if (modify_ip_header && ip_proto != IPPROTO_TCP && + if (modify_ip_header && ip_proto != 0 && ip_proto != IPPROTO_TCP && ip_proto != IPPROTO_UDP && ip_proto != IPPROTO_ICMP) { NL_SET_ERR_MSG_MOD(extack, "can't offload re-write of non TCP/UDP");