From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cumulusnetworks.com; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=mtj5BWUVGyinNX7wvC73dcZuNmbbOVj5imGPpnqwC7s=; b=UZd2c5nyGY2rKI/2SUt5BXQqvmIHkkRf+jsPzmIMbnYtgP5mjuvoRKkMSiclljwFWD 8nH8mAzPwXXUk5Eg3xbzAcJmiUdIgN9NOiJPCkTfk+6TLJ8v21c15H+ymNSKNQDy2oPW O7tnKIJ5jSJMkKsN07BcWhSod4qIB/lo1+deE= From: Nikolay Aleksandrov Date: Thu, 23 Jan 2020 15:28:04 +0200 Message-Id: <20200123132807.613-2-nikolay@cumulusnetworks.com> In-Reply-To: <20200123132807.613-1-nikolay@cumulusnetworks.com> References: <20200123132807.613-1-nikolay@cumulusnetworks.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Bridge] [PATCH net-next 1/4] net: bridge: check port state before br_allowed_egress List-Id: Linux Ethernet Bridging List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: netdev@vger.kernel.org Cc: Nikolay Aleksandrov , roopa@cumulusnetworks.com, bridge@lists.linux-foundation.org, davem@davemloft.net If we make sure that br_allowed_egress is called only when we have BR_STATE_FORWARDING state then we can avoid a test later when we add per-vlan state. Signed-off-by: Nikolay Aleksandrov --- net/bridge/br_forward.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/bridge/br_forward.c b/net/bridge/br_forward.c index 86637000f275..7629b63f6f30 100644 --- a/net/bridge/br_forward.c +++ b/net/bridge/br_forward.c @@ -25,7 +25,7 @@ static inline int should_deliver(const struct net_bridge_port *p, vg = nbp_vlan_group_rcu(p); return ((p->flags & BR_HAIRPIN_MODE) || skb->dev != p->dev) && - br_allowed_egress(vg, skb) && p->state == BR_STATE_FORWARDING && + p->state == BR_STATE_FORWARDING && br_allowed_egress(vg, skb) && nbp_switchdev_allowed_egress(p, skb) && !br_skb_isolated(p, skb); } -- 2.21.0