actually found it, hidden way beneath.. ok so it is at: datapath/flow.c:53: update_range__ it update the ranges for tun_id and other parameters, basically called during flow-add as Andy mentioned below.
Thanks guys for the help. Regards. On Tue, Aug 13, 2013 at 5:10 PM, roampune <[email protected]> wrote: > > On Tue, Aug 13, 2013 at 4:34 PM, Andy Zhou <[email protected]> wrote: > >> Mask list gets build as the kernel receives the flow-add netlink message >> from the user space. If the downloaded flow does not mention tun_id, we >> will treat is as wildcard, this is in general the same with other netlink >> attributes. >> > > very true, but any chance you could point me to the code or file where > this happens. i am still not familiar with the code yet. > > Regards. > > >> >> >> On Tue, Aug 13, 2013 at 4:05 PM, roampune <[email protected]> wrote: >> >>> Hi Guys, >>> >>> I am trying to trace the code for vxlan in datapath directory. >>> I know how the skb traverse from udp socket as shown below. >>> >>> udp socket -> vxlan_udp_encap_recv -> vxlan_rcv -> >>> ovs_vport_receive -> ovs_dp_process_received_packet -> ... >>> >>> but i don't quite understand where does the tun_id comparison initiates. >>> I mean i know where it happens in __flow_cmp_key but the parameters >>> key_start and key_end are derived from mask->range.start and mask-> >>> range.end and the mask is taken from a tbl->mask_list from dp, but where >>> is mask_list generated? i mean where is it decided if tun_id needs to >>> be compared or not. >>> >>> Just by grep'ng around i find a function flow_key_start, but it checks >>> for >>> tun_key.ipv4_dst and not tun_key.tun_id, so i am confused now where the >>> comparison happens. >>> >>> any help would be appreciated. >>> >>> Regards. >>> >>> >>> _______________________________________________ >>> dev mailing list >>> [email protected] >>> http://openvswitch.org/mailman/listinfo/dev >>> >>> >> >
_______________________________________________ dev mailing list [email protected] http://openvswitch.org/mailman/listinfo/dev
