On Oct 8, 2014, at 5:21 PM, Alin Serdean <[email protected]> wrote:
> For this, the old method of finding vports based on the > ovs port numbers is removed. Now, the lookup of a vport > by ovs port number is done the same way as the lookup by > hyper-v switch port id. > > This is done so that the kernel is able to interact with > the userspace correctly when using vport channels. > The problem manifested in lib/dpif-netlink.c, at the function > vport_add_channels. > > This patch removes the field vportArray from OVS_SWITCH_CONTEXT. > In its place, portNoHashArray is set. In the OVS_VPORT_ENTRY > struct, we also add portNoLink. This new method will do lookup > and insertions of vports by ovs (datapath) port numbers the same > way it is done for hyper-v switch port ids. > > This patch implicitly removes the indexes, which were previously > used in insertions and lookups on ovs port numbers. The removal > of the index also means that the vxlan vport can no longer be > looked up the same way as it was done before: now we hold a pointer > to it, vxlanVport in OVS_SWITCH_CONTEXT. For the moment, we can > have only one vxlan vport. When more will be allowed, this field > will turn into a list of vxlan ports. > > The invalid port number value (held in OVS_DPPORT_NUMBER_INVALID) > is now changed from 0 to MAXUINT16, the same as it is on linux. > > The function OvsComputeVportNo has also been removed, since the > computation of a vport port number can no longer be done like this. > When vport add will be added, a new, updated OvsComputeVportNo > function will be added. > > Also, in OvsInitVportCommon, we no longer need to (and no longer can) > initialize vport->ovsName, nor vport->ovsNameLen, because they will > be initialized by the netlink command vport add. Since the netlink > command vport add will generate numbers for the datapath (ovs) port > numbers and set the port names, we cannot insert the vport into the > hash array of port numbers here, nor into the hash array of port names. > > Signed-off-by: Samuel Ghinet <[email protected]> > Co-authored-by: Alin Gabriel Serdean <[email protected]> Signed-off-by: Nithin Raju <[email protected]> Tested-by: Nithin Raju <[email protected]> Thanks, -- Nithin _______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
