On Oct 14, 2014, at 8:32 AM, Sorin Vinturis <svintu...@cloudbasesolutions.com> 
wrote:

> In the ingress datapath the creation of a missed packet doesn't
> need to be guarded by the dispatchLock. Same for the NBL context
> initialization.
> 
> In the OvsInjectPacketThroughActions function extracting flow
> parameters (OvsExtractFlow) from the current packet doesn't need to
> be guarded. Nor by the vports lock, nor by the datapath lock. I also
> removed from the datapath lock the creation of the queue packet
> (OvsCreateQueuePacket) in case the flow lookup fails.
> 
> Also in the OvsGetNetdevCmdHandler function I have removed the
> dispatchLock acquisition that guarded OvsGetExtInfoIoctl call, due
> to the fact that the latter function uses the same lock to protect
> vports handling.
> 
> Signed-off-by: Sorin Vinturis <svintu...@cloudbasesolutions.com>
> Reported-by: Samuel Ghinet <sghi...@cloudbasesolutions.com>
> Reported-at: 
> https://urldefense.proofpoint.com/v1/url?u=https://github.com/openvswitch/ovs-issues/issues/19&k=oIvRg1%2BdGAgOoM1BIlLLqw%3D%3D%0A&r=ubrOpIWavCMqX4l4j1LEVpTfDj%2FD5Qyn8KCoJIBGvzo%3D%0A&m=4Q%2BYLZ%2B9%2FBAAr16GF8gZXIRzrZ3%2B7dAfnpZiljTmaKE%3D%0A&s=ae4a90bb15359b2364316d39db9f1959631db6a47c96992923199362c32115f9

hi Sorin,
During packet processing, we want to hold on to the 
'switchContext->dispatchLock' until this packet is processed. The reason being 
that, we don't want the source port nor any of the ports indicated as output 
ports by the flow to disappear. Some of the changes below will have to be 
reverted.

Changes in User.c and Vport.c look good. You'll have to respin the changes in 
PacketIO.c and Tunnel.c

thanks,
-- Nithin

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to