svn commit: r345192 - head/sys/net

Kristof Provost kp at freebsd.org
Fri Mar 15 17:14:25 UTC 2019


On 2019-03-15 17:13:05 (+0000), Kyle Evans <kevans at FreeBSD.org> wrote:
> Author: kevans
> Date: Fri Mar 15 17:13:05 2019
> New Revision: 345192
> URL: https://svnweb.freebsd.org/changeset/base/345192
> 
> Log:
>   if_bridge(4): Drop pointless rtflush
>   
>   At this point, all routes should've already been dropped by removing all
>   members from the bridge. This condition is in-fact KASSERT'd in the line
>   immediately above where this nop flush was added.
> 
> Modified:
>   head/sys/net/if_bridge.c
> 
> Modified: head/sys/net/if_bridge.c
> ==============================================================================
> --- head/sys/net/if_bridge.c	Fri Mar 15 17:04:33 2019	(r345191)
> +++ head/sys/net/if_bridge.c	Fri Mar 15 17:13:05 2019	(r345192)
> @@ -2449,6 +2449,22 @@ bridge_input(struct ifnet *ifp, struct mbuf *m)
>  		}							\
>  		m->m_pkthdr.rcvif = iface;				\
>  		BRIDGE_UNLOCK(sc);					\
> +		/*							\
> +		 * These mbufs will not have another chance to get sent	\
> +		 * to bpf elsewhere in the stack as being received	\
> +		 * by this interface, because they are coming in over	\
> +		 * the bridge.  They likely have been accounted for	\
> +		 * when received by the interface that they came from,	\
> +		 * but this is not enough for other consumers,		\
> +		 * e.g. dhclient, to be satisfied.			\
> +		 *							\
> +		 * rcvif needs to be set on the mbuf here, lest we risk	\
> +		 * losing the mbuf as a "duplicate" because it's	\
> +		 * considered outgoing by bpf.				\
> +		 */							\
> +		if ((iface)->if_type != IFT_BRIDGE &&			\
> +		    (iface)->if_bpf != NULL && (iface) != (ifp))	 \
> +			ETHER_BPF_MTAP(iface, m);			\

I think you didn't intend to commit this yet.

Regards,
Kristof


More information about the svn-src-head mailing list