datapath-windows: Missed packets are not queued.
authorSorin Vinturis <svinturis@cloudbasesolutions.com>
Mon, 29 Sep 2014 15:07:04 +0000 (15:07 +0000)
committerBen Pfaff <blp@nicira.com>
Mon, 29 Sep 2014 16:18:19 +0000 (09:18 -0700)
commit5019855cad0b965e32fc2342773c0915c54329bb
treeddbde394c81d11123b19b4138e5dc17b27b1a8ff
parent8e86f09081ad4c6cf275d82c15abc2e35b3641f9
datapath-windows: Missed packets are not queued.

Currently, whenever there's a missed packet, the ovs driver allocates
memory and copies the packet even if there's no packet queue setup from
userspace. Then if there's no queue created, the packet is released and
dropped.

The solution was to check for the existence of the userspace queue before
trying to allocate and add a new missed packet to the queue. If there is
no userspace queue created, the original packet is dropped without creating
a new missed packet.

Signed-off-by: Sorin Vinturis <svinturis@cloudbasesolutions.com>
Reported-by: Nithin Raju <nithin@vmware.com>
Reported-at: https://github.com/openvswitch/ovs-issues/issues/32
Tested-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>
Acked-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>
Acked-by: Nithin Raju <nithin@vmware.com>
Signed-off-by: Ben Pfaff <blp@nicira.com>
datapath-windows/ovsext/Datapath.c
datapath-windows/ovsext/Ioctl.c
datapath-windows/ovsext/User.c