From patchwork Wed Nov 7 17:07:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= X-Patchwork-Id: 994379 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=none (p=none dis=none) header.from=rere.qmqm.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="aL+RHaSp"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qtBN0TlHz9s7h for ; Thu, 8 Nov 2018 04:07:08 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387520AbeKHCiT (ORCPT ); Wed, 7 Nov 2018 21:38:19 -0500 Received: from rere.qmqm.pl ([91.227.64.183]:30294 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727848AbeKHCiT (ORCPT ); Wed, 7 Nov 2018 21:38:19 -0500 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 42qt994jfcz9F; Wed, 7 Nov 2018 18:06:05 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1541610365; bh=B+h8ifh3HLK1JLlmbyw5V1a1DLdQhJQEqhyY0PvFPSQ=; h=Date:In-Reply-To:References:From:Subject:To:From; b=aL+RHaSpGNkf/xYUzf1KIE1YDjsVY6qLm5wvzLXfYYE0rTYPqIpjBbh6SCCSrcKBi yAAqZhlFCC9lgTARKH4Hwz2euon5cCTvcAYFmyOTi5YFCQp2RQ7faZnx0bVJTAEwyg QyE2MOcHJydAW3h9jHrvHGRt7OUvlLYy2X88w8BqJ0Uw9b5c9QUQHtsbiB29nSL4lx CzjzumoRHzW8gOpqV/nQD4dKNr7EEfCnjPrxwWvpQe5sRYMzHt3W17r2bz9UWFMQEk UhWLHkOMzFwgI/3dptndGum1e55BuEiYtUFYbOxaHYxbOPV4zTwzVOATqivNAZJgUG AgTujILgWHBpQ== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.100.2 at mail Date: Wed, 07 Nov 2018 18:07:02 +0100 Message-Id: <743b58a62c8d9b01b3463aba724bc33095b7baca.1541610138.git.mirq-linux@rere.qmqm.pl> In-Reply-To: References: From: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= Subject: [PATCH net-next 1/4] net/vlan: introduce __vlan_hwaccel_clear_tag() helper MIME-Version: 1.0 To: netdev@vger.kernel.org Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Signed-off-by: Michał Mirosław --- include/linux/if_vlan.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h index 83ea4df6ab81..c438fa0a1c6a 100644 --- a/include/linux/if_vlan.h +++ b/include/linux/if_vlan.h @@ -461,6 +461,17 @@ static inline struct sk_buff *vlan_insert_tag_set_proto(struct sk_buff *skb, return skb; } +/** + * __vlan_hwaccel_clear_tag - clear hardware accelerated VLAN info + * @skb: skbuff to clear + * + * Clears the VLAN information from @skb + */ +static inline void __vlan_hwaccel_clear_tag(struct sk_buff *skb) +{ + skb->vlan_tci = 0; +} + /* * __vlan_hwaccel_push_inside - pushes vlan tag to the payload * @skb: skbuff to tag @@ -475,7 +486,7 @@ static inline struct sk_buff *__vlan_hwaccel_push_inside(struct sk_buff *skb) skb = vlan_insert_tag_set_proto(skb, skb->vlan_proto, skb_vlan_tag_get(skb)); if (likely(skb)) - skb->vlan_tci = 0; + __vlan_hwaccel_clear_tag(skb); return skb; } From patchwork Wed Nov 7 17:07:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= X-Patchwork-Id: 994378 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=none (p=none dis=none) header.from=rere.qmqm.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="gaTUHDKH"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qtBM2DF6z9sCw for ; Thu, 8 Nov 2018 04:07:07 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731408AbeKHCiT (ORCPT ); Wed, 7 Nov 2018 21:38:19 -0500 Received: from rere.qmqm.pl ([91.227.64.183]:2650 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727941AbeKHCiT (ORCPT ); Wed, 7 Nov 2018 21:38:19 -0500 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 42qt99749mzBr; Wed, 7 Nov 2018 18:06:05 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1541610366; bh=PpuoG6QF2xxA93CCIhr/0ng4UhdkMiHnLIsePOg74G4=; h=Date:In-Reply-To:References:From:Subject:To:From; b=gaTUHDKHUMx7YwWhEp6+d/BKWHHhWezTyhxb5Znoe8EvsgVsqiPm8T7ncxRabVjzG pFRecDEfASuY6HZTcdnyDDZJGRi0okOKykJwb1C6wmh3TlYub+SMdc06dKdn3C8jne GbvXrs5CPt2EDXhaE8kxBVhmW3C3DjVkAu6aHxHsI6Cs3VD7ELLZSug1Pu5Pel1TnU c5im7XuZOZ+w48UwA5V0tHp5fMLoeyDcIXR+W4Ykvj+hI9ShYtxko2NAS/APiL+qV1 MwU7Ktdez/X43xYKWXsqZguiC4TNFhnmDo/PMLw5z7a3MHRIj8zvJfyUKtzOmhZRe6 51OZ19IF4OvBw== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.100.2 at mail Date: Wed, 07 Nov 2018 18:07:02 +0100 Message-Id: In-Reply-To: References: From: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= Subject: [PATCH net-next 2/4] net/vlan: introduce __vlan_hwaccel_copy_tag() helper MIME-Version: 1.0 To: netdev@vger.kernel.org Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Signed-off-by: Michał Mirosław --- include/linux/if_vlan.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h index c438fa0a1c6a..941da4bf3929 100644 --- a/include/linux/if_vlan.h +++ b/include/linux/if_vlan.h @@ -472,6 +472,19 @@ static inline void __vlan_hwaccel_clear_tag(struct sk_buff *skb) skb->vlan_tci = 0; } +/** + * __vlan_hwaccel_copy_tag - copy hardware accelerated VLAN info from another skb + * @dst: skbuff to copy to + * @src: skbuff to copy from + * + * Copies VLAN information from @src to @dst (for branchless code) + */ +static inline void __vlan_hwaccel_copy_tag(struct sk_buff *dst, const struct sk_buff *src) +{ + dst->vlan_proto = src->vlan_proto; + dst->vlan_tci = src->vlan_tci; +} + /* * __vlan_hwaccel_push_inside - pushes vlan tag to the payload * @skb: skbuff to tag From patchwork Wed Nov 7 17:07:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= X-Patchwork-Id: 994381 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=none (p=none dis=none) header.from=rere.qmqm.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="gI497e2c"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qtBP6ZMkz9s7h for ; Thu, 8 Nov 2018 04:07:09 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731470AbeKHCiU (ORCPT ); Wed, 7 Nov 2018 21:38:20 -0500 Received: from rere.qmqm.pl ([91.227.64.183]:59248 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727989AbeKHCiU (ORCPT ); Wed, 7 Nov 2018 21:38:20 -0500 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 42qt9B2T6CzK9; Wed, 7 Nov 2018 18:06:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1541610366; bh=JOzrU4p2X4jZZavC/0eEMn1LQtU/r9/Zo36dZKp467A=; h=Date:In-Reply-To:References:From:Subject:To:From; b=gI497e2c+DI1igp0rTc4sDlHmWRLpCjg0/ewk8BWZH5dsuANOQk2xWBpoEsw+v26L rEiSoJzmdjgKnelk3KrldBIVKJRXrEQWxexbxoGBXO1R7ILa9TBgPiqv/9b5HZHCi+ bWZ39Am8l4GNe1JMCPg0JodHczGnkGT1075LhY5ngi8lq/B24ya+W5B0InHw5Cwj5M L1lPVecZeCrVk86z3lAid9PLt09xoZRIu0LvMxw8X3lfKYbzuElGMOvrh7SKhZ7Ykr VBQ1lX0b2uNahM0WQvxigbgimQ7vj7qdEICT4v4WCzSTEyniGWkfnWu0tYPaqiOpGJ 9qA0Hopwic7kw== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.100.2 at mail Date: Wed, 07 Nov 2018 18:07:03 +0100 Message-Id: <3c0556edad02d8a9cf005bfe87399a4e6f53dda4.1541610138.git.mirq-linux@rere.qmqm.pl> In-Reply-To: References: From: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= Subject: [PATCH net-next 3/4] net/vlan: include the shift in skb_vlan_tag_get_prio() MIME-Version: 1.0 To: netdev@vger.kernel.org Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Signed-off-by: Michał Mirosław --- include/linux/if_vlan.h | 2 +- net/core/flow_dissector.c | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h index 941da4bf3929..b14bf87999aa 100644 --- a/include/linux/if_vlan.h +++ b/include/linux/if_vlan.h @@ -81,7 +81,7 @@ static inline bool is_vlan_dev(const struct net_device *dev) #define skb_vlan_tag_present(__skb) ((__skb)->vlan_tci & VLAN_TAG_PRESENT) #define skb_vlan_tag_get(__skb) ((__skb)->vlan_tci & ~VLAN_TAG_PRESENT) #define skb_vlan_tag_get_id(__skb) ((__skb)->vlan_tci & VLAN_VID_MASK) -#define skb_vlan_tag_get_prio(__skb) ((__skb)->vlan_tci & VLAN_PRIO_MASK) +#define skb_vlan_tag_get_prio(__skb) (((__skb)->vlan_tci & VLAN_PRIO_MASK) >> VLAN_PRIO_SHIFT) static inline int vlan_get_rx_ctag_filter_info(struct net_device *dev) { diff --git a/net/core/flow_dissector.c b/net/core/flow_dissector.c index 676f3ad629f9..56d1e9b73142 100644 --- a/net/core/flow_dissector.c +++ b/net/core/flow_dissector.c @@ -952,8 +952,7 @@ bool __skb_flow_dissect(const struct sk_buff *skb, if (!vlan) { key_vlan->vlan_id = skb_vlan_tag_get_id(skb); - key_vlan->vlan_priority = - (skb_vlan_tag_get_prio(skb) >> VLAN_PRIO_SHIFT); + key_vlan->vlan_priority = skb_vlan_tag_get_prio(skb); } else { key_vlan->vlan_id = ntohs(vlan->h_vlan_TCI) & VLAN_VID_MASK; From patchwork Wed Nov 7 17:07:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= X-Patchwork-Id: 994380 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=none (p=none dis=none) header.from=rere.qmqm.pl Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=rere.qmqm.pl header.i=@rere.qmqm.pl header.b="BblQa9tp"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 42qtBN5nxjz9sCw for ; Thu, 8 Nov 2018 04:07:08 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731453AbeKHCiU (ORCPT ); Wed, 7 Nov 2018 21:38:20 -0500 Received: from rere.qmqm.pl ([91.227.64.183]:29793 "EHLO rere.qmqm.pl" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727757AbeKHCiU (ORCPT ); Wed, 7 Nov 2018 21:38:20 -0500 Received: from remote.user (localhost [127.0.0.1]) by rere.qmqm.pl (Postfix) with ESMTPSA id 42qt9B5tBfzSP; Wed, 7 Nov 2018 18:06:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=rere.qmqm.pl; s=1; t=1541610366; bh=/EF3iFpeyYFdPCGjWli4D3u++bVZj5C8ubsGifMoxiM=; h=Date:In-Reply-To:References:From:Subject:To:From; b=BblQa9tpD0GQiJ1J6G4QMwHbYD5zhP7Iy74YY7Lve+JUlSnjR0Nh2OY4A5HTuhVSm 4dL4EwBvGewNGJw0RWpbwp0OQhuaI6qX3fTJTmOf4bQNFUD+OaE29H/QK3qWuk0D4u A7QGlvjdSQj9xl2FMtTg1b1ISoQJdY0KYajPSIQXirV+S4IStVMRSH43gwUjIF/MPA zsFyEWdPF8t/lPOOrIygeMRZO+ZfLF3LLCxiUrC3M0WdA0zQEL/ICMofFwL37EzZz6 JBS7+qP+6jWIKQf4TFecknL7VVzh9qeYOqq0FC2mQbIcnswb5+tZWclrTlQGRTEruQ JZ6pvPrLO7r6A== X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.100.2 at mail Date: Wed, 07 Nov 2018 18:07:03 +0100 Message-Id: <56a05e7022bb0c9b50ee18c1f43bf64f17053658.1541610138.git.mirq-linux@rere.qmqm.pl> In-Reply-To: References: From: =?utf-8?b?TWljaGHFgiBNaXJvc8WCYXc=?= Subject: [PATCH net-next 4/4] net/vlan: remove unused #define HAVE_VLAN_GET_TAG MIME-Version: 1.0 To: netdev@vger.kernel.org Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Signed-off-by: Michał Mirosław --- include/linux/if_vlan.h | 2 -- 1 file changed, 2 deletions(-) diff --git a/include/linux/if_vlan.h b/include/linux/if_vlan.h index b14bf87999aa..03b08ffded07 100644 --- a/include/linux/if_vlan.h +++ b/include/linux/if_vlan.h @@ -555,8 +555,6 @@ static inline int __vlan_hwaccel_get_tag(const struct sk_buff *skb, } } -#define HAVE_VLAN_GET_TAG - /** * vlan_get_tag - get the VLAN ID from the skb * @skb: skbuff to query