diff --git a/drivers/net/team/team.c b/drivers/net/team/team.c index 8b2adc56b92a..b07dde6f0abf 100644 --- a/drivers/net/team/team.c +++ b/drivers/net/team/team.c @@ -734,6 +734,11 @@ static rx_handler_result_t team_handle_frame(struct sk_buff **pskb) port = team_port_get_rcu(skb->dev); team = port->team; if (!team_port_enabled(port)) { + if (is_link_local_ether_addr(eth_hdr(skb)->h_dest)) + /* link-local packets are mostly useful when stack receives them + * with the link they arrive on. + */ + return RX_HANDLER_PASS; /* allow exact match delivery for disabled ports */ res = RX_HANDLER_EXACT; } else {