Discard OpenFlow messages not for us in dpif_recv_openflow().
authorBen Pfaff <blp@nicira.com>
Fri, 2 Jan 2009 21:58:08 +0000 (13:58 -0800)
committerBen Pfaff <blp@nicira.com>
Fri, 2 Jan 2009 21:58:08 +0000 (13:58 -0800)
commite5f392d4933c24a7ec2ed455cf70dab1bcbbce99
treeb720defb64bb4789d7d0c1ef7ad8c96d59521932
parentc1cc04c21b0fea06d603da4bc4eeef75bafa8062
Discard OpenFlow messages not for us in dpif_recv_openflow().

Currently there is only a single Netlink multicast group that is shared
by all OpenFlow datapaths.  This is undesirable and should be fixed, but
a solution in every case is impossible due to Linux kernel limitations.
This commit works around the problem by dropping OpenFlow messages that
are related to a datapath that we are not interested in.

This should fix vswitchd behavior when more than one bridge is configured.

Thanks to Keith and Justin for diagnosing the problem.
lib/dpif.c
lib/dpif.h
lib/vconn-netlink.c