Hey Ben, Joe, Could I get a review of either or both of you, this evening?
I'm planning to push it later tonight, Thanks, Alex Wang On Tue, Jul 15, 2014 at 7:19 PM, Alex Wang <al...@nicira.com> wrote: > Commit 0d1cee123a84 (stp: Fix bpdu tx problem in listening state) > makes ovs drop the stp bpdu packets if stp is not enabled on the > input port. However, when pif bridge is used and stp is enabled > on the integration bridge. The flow translation of stp bpdu > packets will go through a level of resubmission which changes > the input port to the corresponding peer port. Since, the > patch port on the pif bridge does not have stp enabled, the > flow translation will drop the bpdu packets. > > This commit fixes the issue by making ovs forward stp bpdu packets > on stp-disabled port. > > VMware-BZ: #1284695 > > Signed-off-by: Alex Wang <al...@nicira.com> > --- > lib/stp.c | 8 ++++++-- > 1 file changed, 6 insertions(+), 2 deletions(-) > > diff --git a/lib/stp.c b/lib/stp.c > index 218eb9a..85b8008 100644 > --- a/lib/stp.c > +++ b/lib/stp.c > @@ -685,12 +685,16 @@ stp_learn_in_state(enum stp_state state) > } > > /* Returns true if 'state' is one in which rx&tx bpdu should be done on > - * on a port, false otherwise. */ > + * on a port, false otherwise. > + * > + * Returns true if 'state' is STP_DISABLED, since presumably in that case > the > + * port should still work, just not have STP applied to it. */ > bool > stp_listen_in_state(enum stp_state state) > { > return (state & > - (STP_LISTENING | STP_LEARNING | STP_FORWARDING)) != 0; > + ( STP_DISABLED | STP_LISTENING | STP_LEARNING > + | STP_FORWARDING)) != 0; > } > > /* Returns the name for the given 'role' (for use in debugging and log > -- > 1.7.9.5 > > _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev