I tried version 2.0.90 (commit: efa0521ca6a52d5), everything works like a charm.
Then I checkout commit 31d738062df326aca4, try to replicate it. After running 'fakeroot debian/rules binary', I get version 2.0.90 only, packages of version 1.12.90 are not built (I removed old source code, clone a new copy from git://openvswitch.org/openvswitch, and noticed that branch-1.12.0 is removed). The old source code would build two versions (1.12.90 and 2.0.90) at the same time. I'm afraid I've made a mistake, sorry for that. I'll try several earlier commits later. On Wed, Sep 18, 2013 at 12:41 AM, Ben Pfaff <b...@nicira.com> wrote: > On Tue, Sep 17, 2013 at 12:11:37PM +0800, Peter wrote: > > Hello, > > > > I encounter a problem of patch port and 'in_port' action: ovs-vswitchd > hangs when any packet received from patch port > > and matches a flow with 'in_port' action. Is it a bug? Or I missing > anything? My ovs version is 1.12.90, compiled with > > recent git source code (commit: 31d738062df326aca4), however, I've not > test other versions yet. > > > > To replicate: > > > > 1, Create a test netns and devices > > > > sudo ip netns add n1 > > sudo ip netns add n2 > > sudo ip l add type veth > > sudo ip l add type veth > > sudo ip l set dev veth0 up > > sudo ip l set dev veth1 up netns n1 > > sudo ip l set dev veth2 up > > sudo ip l set dev veth3 up netns n2 > > > > 2, Add ip addresses and routes > > > > sudo ip netns exec n1 ip a add 10.0.1.2/24 dev veth1 brd 10.0.1.255 > > sudo ip netns exec n1 ip r add 10.0.0.0/8 dev veth1 > > sudo ip netns exec n2 ip a add 10.0.2.2/24 dev veth3 brd 10.0.2.255 > > sudo ip netns exec n2 ip r add 10.0.0.0/8 dev veth3 > > > > 3, Create two bridges and connected with path port, and connect test > devices > > > > sudo ovs-vsctl add-br br-test > > sudo ovs-vsctl add-br br-loop > > sudo ovs-vsctl add-port br-test patch_t_l -- set Interface patch_t_l > type=patch options:peer=patch_l_t > > sudo ovs-vsctl add-port br-loop patch_l_t -- set Interface patch_l_t > type=patch options:peer=patch_t_l > > sudo ovs-vsctl add-port br-test veth0 -- set Port veth0 tag=1 > > sudo ovs-vsctl add-port br-test veth2 -- set Port veth2 tag=2 > > > > 4, Add flows > > > > sudo ovs-ofctl add-flow br-loop > priority=3,in_port=1,arp,nw_dst=10.0.1.2,actions=mod_vlan_vid:1,in_port > > sudo ovs-ofctl add-flow br-loop > priority=3,in_port=1,ip,nw_dst=10.0.1.2,actions=mod_vlan_vid:1,in_port > > sudo ovs-ofctl add-flow br-loop > priority=3,in_port=1,arp,nw_dst=10.0.2.2,actions=mod_vlan_vid:2,in_port > > sudo ovs-ofctl add-flow br-loop > priority=3,in_port=1,ip,nw_dst=10.0.2.2,actions=mod_vlan_vid:2,in_port > > > > 5, send test packets > > sudo ip netns exec n1 ping 10.0.2.2 > > > > Now, the ovs-vswitchd seems hang, and I strace the process, get a lot > > futex calls, have to restart vswitch to recovery. > > Can you provide a backtrace (via GDB)? >
_______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss