Hi Cascardo, Thanks for that ! Got it.
Do you have an idea on my previous question on vports? How does it map with the physical port? I see from the code that vports are used to receive packets coming to the switch (ovs_vport_receive) and to send (ovs_vport_send). I am assuming they are just virtual ports on the Datapath side through which the different NICs/devices to connect to the OVS bridge in user space. Thanks, Monica -----Original Message----- From: Thadeu Lima de Souza Cascardo [mailto:casca...@redhat.com] Sent: Monday, March 14, 2016 8:17 AM To: Rajasekaran, Monica Cc: discuss@openvswitch.org Subject: Re: [ovs-discuss] Queuing a packet to user space On Wed, Mar 09, 2016 at 11:06:57PM +0000, Rajasekaran, Monica wrote: > Hi all, > > Once call in the data path hits queue_userspace_packet(), how is the packet > received by user space ? > > I understand that recv_upcalls-->dpif_recv() and handle_upcalls() will take > care of upcall processing. > > But how are queue_userspace_packet() in the data path and recv_upcalls() in > the user space connected? I can't seem to find the link. > > Thanks, > Monica > They are connected using a netlink socket. Take a look at queue_userspace_packet, it calls genlmsg_unicast. At userspace, lib/dpif-netlink.c:dpif_netlink_recv__ calls nl_sock_recv. Regards. Cascardo. > _______________________________________________ > discuss mailing list > discuss@openvswitch.org > http://openvswitch.org/mailman/listinfo/discuss _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss