Daniele, thank you, I checked vxlan port again, it is ok, I was using vxlan-gpe port for test, because vxlan-gpe port is l3 port and hasn’t MAC address, that is a doubtable point, I’ll continue to debug it.
From: Daniele Di Proietto [mailto:[email protected]] Sent: Wednesday, November 16, 2016 9:01 AM To: Yang, Yi Y <[email protected]> Cc: [email protected] Subject: Re: [ovs-dev] FW: OVS 2.6.1 DPDK 16.07 issue: pthread_mutex_lock failed (Resource deadlock avoided) in 2016-11-15 6:34 GMT-08:00 Yang, Yi Y <[email protected]<mailto:[email protected]>>: Hi, all I found this issue when I use ovs 2.6.1 and dpdk 16.07, the error is located in the line "ovs_mutex_lock(&dev->mutex);" in get_stats() in lib/netdev-vport.c, it looks like a deadlock is detected, so resulted in ovs-vswitchd coredump, anybody noticed this issue? How can we fix it? this has bothered me two days. static int get_stats(const struct netdev *netdev, struct netdev_stats *stats) { struct netdev_vport *dev = netdev_vport_cast(netdev); ovs_mutex_lock(&dev->mutex); /* Passing only collected counters */ stats->tx_packets = dev->stats.tx_packets; stats->tx_bytes = dev->stats.tx_bytes; stats->rx_packets = dev->stats.rx_packets; stats->rx_bytes = dev->stats.rx_bytes; ovs_mutex_unlock(&dev->mutex); return 0; } Thanks for reporting this Could you share more details about the setup, so maybe I can try to reproduce this? Could you also post a backtrace for every thread from the core file? Thanks, Daniele If I commented out lock and unlock, I'll get the ovs log: ovs_rcu(urcu3)|WARN|blocked 32000 ms waiting for revalidator8 to quiesce ovs-ofctl will also hang. _______________________________________________ dev mailing list [email protected]<mailto:[email protected]> https://mail.openvswitch.org/mailman/listinfo/ovs-dev _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
