From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jakub Kicinski Subject: [RFC net-next 4/8] cxgb4: use tc_can_offload_cls() Date: Tue, 23 Jan 2018 13:33:36 -0800 Message-ID: <20180123213340.19235-5-jakub.kicinski@netronome.com> References: <20180123213340.19235-1-jakub.kicinski@netronome.com> Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, dsahern@gmail.com, Jakub Kicinski To: jiri@resnulli.us Return-path: Received: from mail-pf0-f194.google.com ([209.85.192.194]:37015 "EHLO mail-pf0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752591AbeAWVd5 (ORCPT ); Tue, 23 Jan 2018 16:33:57 -0500 Received: by mail-pf0-f194.google.com with SMTP id p1so1348122pfh.4 for ; Tue, 23 Jan 2018 13:33:57 -0800 (PST) In-Reply-To: <20180123213340.19235-1-jakub.kicinski@netronome.com> Sender: netdev-owner@vger.kernel.org List-ID: Make use of tc_can_offload_cls() to report error in case ethtool tc offload flag is not set or chain unsupported. Signed-off-by: Jakub Kicinski --- drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c index 4716387830ef..bee357e1c147 100644 --- a/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c +++ b/drivers/net/ethernet/chelsio/cxgb4/cxgb4_main.c @@ -2905,7 +2905,7 @@ static int cxgb_set_tx_maxrate(struct net_device *dev, int index, u32 rate) static int cxgb_setup_tc_flower(struct net_device *dev, struct tc_cls_flower_offload *cls_flower) { - if (cls_flower->common.chain_index) + if (!tc_can_offload_cls(dev, &cls_flower->common)) return -EOPNOTSUPP; switch (cls_flower->command) { @@ -2923,7 +2923,7 @@ static int cxgb_setup_tc_flower(struct net_device *dev, static int cxgb_setup_tc_cls_u32(struct net_device *dev, struct tc_cls_u32_offload *cls_u32) { - if (cls_u32->common.chain_index) + if (!tc_can_offload_cls(dev, &cls_u32->common)) return -EOPNOTSUPP; switch (cls_u32->command) { @@ -2951,9 +2951,6 @@ static int cxgb_setup_tc_block_cb(enum tc_setup_type type, void *type_data, return -EINVAL; } - if (!tc_can_offload(dev)) - return -EOPNOTSUPP; - switch (type) { case TC_SETUP_CLSU32: return cxgb_setup_tc_cls_u32(dev, type_data); -- 2.15.1