On 3/1/18 10:29 AM, William Tu wrote: > Hi, > > We're running commands below on kernel 4.15.0: > 1) ip netns add at_ns0 > 2) ip link add p0 type veth peer name ovs-p0 > 3) ip link set p0 netns at_ns0 > 4) ip link set dev ovs-p0 up
# uname -a Linux kenny-jessie3 4.16.0-rc2+ #162 SMP Thu Mar 1 08:48:58 PST 2018 x86_64 GNU/Linux # bash -x /tmp/2 + ip netns add at_ns0 + ip link add p0 type veth peer name ovs-p0 + ip link set p0 netns at_ns0 + ip link set dev ovs-p0 up Works fine for me on top of tree. What is the output of 'cat /proc/<pid>/stack' when it hangs? > > However, it always hangs at creating veth peer, command (2) when we > run above commands in GNU autotest. Running the same commands in a > bash script works fine. > > Running bisect on iproute2, the first bad commit is > commit 72a2ff3916e59d2132a7d613d9e8f5eb372ba43e > Author: Chris Mi <chr...@mellanox.com> > Date: Fri Jan 12 14:13:15 2018 +0900 > > lib/libnetlink: Add a new function rtnl_talk_iov > > rtnl_talk can only send a single message to kernel. Add a new function > rtnl_talk_iov that can send multiple messages to kernel. > rtnl_talk_iov takes struct iovec * and iovlen as arguments. > > GDB shows it hangs on > #0 0x00007f9c92e6b330 in recvmsg () from /lib/x86_64-linux-gnu/libc.so.6 > #1 0x000000000044eac6 in __rtnl_recvmsg () > #2 0x000000000044eb95 in rtnl_recvmsg () > #3 0x000000000044ed46 in __rtnl_talk_iov () > #4 0x000000000044fbb8 in rtnl_talk () > #5 0x0000000000422554 in iplink_modify () > > Any suggestion about how to debug this? > Thanks > William >