datapath: Prevent bridge module from loading along with openvswitch.
For some time, the openvswitch kernel module has checked whether the
bridge module is loaded and refused to start if so. However, the bridge
module doesn't check whether the openvswitch module is loaded, so it can
end up loaded at the same time if something goes wrong, and then generally
the system OOPSes sooner or later.
This commit adds proper mutual exclusion, by registering an LLC SAP for
the protocol used by spanning tree. This is the first thing that the
bridge module does at initialization time also, and since there can only
be one registration for a given protocol this prevents both modules from
being loaded at the same time.
This fixes an actual OOPS observed at boot time on a XenServer running the
debug kernel that we built based on Citrix's 5.5.0-beta1 kernel.