Wind River Support Network

HomeDefectsLIN9-8913
Fixed

LIN9-8913 : Teardown of network namespaced virtual i/f causes process to hang in D-state

Created: Aug 13, 2019    Updated: Nov 21, 2019
Resolved Date: Oct 8, 2019
Previous ID: LIN8-11346
Found In Version: 9.0.0.21
Fix Version: 9.0.0.24
Severity: Severe
Applicable for: Wind River Linux 9
Component/s: Kernel, Networking

Description

*The i/f is in `fib_2` netns*, and the stack trace indicates that *it's waiting in `netlink_wait_allrefs()`*.

 
`*dmesg*` shows that an (at the point of hanging) *unlisted interface* is *waiting for refcnt to drop to zero*.

 
 * from `*ps aux*`

> sirpa 4986 0.0 0.2 463432 20520 ? Dl 12:43 0:00

 
 * from `*dmesg*`

> [ 853.064007] unregister_netdevice: waiting for eth10.333 to become

> free. Usage count = 3

> [ 863.312007] unregister_netdevice: waiting for eth10.333 to become

> free. Usage count = 3

 
 * from */proc/<dpsd pid>/stack*

> [<0>] msleep+0x15/0x18

> [<0>] netdev_run_todo+0x144/0x24c

> [<0>] rtnetlink_rcv_msg+0x209/0x23e

> [<0>] netlink_rcv_skb+0x56/0xa9

> [<0>] netlink_unicast+0x10a/0x199

> [<0>] netlink_sendmsg+0x2cf/0x310

> [<0>] sock_sendmsg+0x14/0x1e

> [<0>] __sys_sendto+0xba/0xe1

> [<0>] __x64_sys_sendto+0x1f/0x22

> [<0>] do_syscall_64+0x79/0x12e

> [<0>] entry_SYSCALL_64_after_hwframe+0x44/0xa9

> [<0>] 0xffffffffffffffff

 

*The interface seen in dmesg does not show up in the output of*

`ifconfig`:

> root@du1:/# ip netns exec fib_2 ifconfig

> eth11.336 Link encap:Ethernet HWaddr 98:a4:04:4f:7f:4a

> UP BROADCAST MULTICAST MTU:1500 Metric:1

> RX packets:0 errors:0 dropped:0 overruns:0 frame:0

> TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

> collisions:0 txqueuelen:1000

> RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

>

> eth12.339 Link encap:Ethernet HWaddr 98:a4:04:4f:7f:4b

> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

> RX packets:0 errors:0 dropped:0 overruns:0 frame:0

> TX packets:282 errors:0 dropped:0 overruns:0 carrier:0

> collisions:0 txqueuelen:1000

> RX bytes:0 (0.0 B) TX bytes:18876 (18.4 KiB)

>

> lo Link encap:Local Loopback

> inet addr:127.0.0.1 Mask:255.0.0.0

> inet6 addr: ::1/128 Scope:Host

> UP LOOPBACK RUNNING MTU:16436 Metric:1

> RX packets:360 errors:0 dropped:0 overruns:0 frame:0

> TX packets:360 errors:0 dropped:0 overruns:0 carrier:0

> collisions:0 txqueuelen:1000

> RX bytes:37838 (36.9 KiB) TX bytes:37838 (36.9 KiB)

 

 

PRELIMINARY INVESTIGATION:

====================================================================

The investigation done points to *currently unresolved netdev/namespace clean-up issue*. See:

 [https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1711407] --> unregister_netdevice: waiting for lo to become free

[https://lkml.org/lkml/2018/8/15/387] --> unregister_netdevice: waiting for DEV to become free

 Specifically this comment:

[https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1711407/comments/7]

Steps to Reproduce

Please see the attachments for additional logs:

tn_dpsd_dmesg.txt
 tn_dpsd_ifconfig_a.txt
 tn_dpsd_netstat.txt
 tn_dpsd_syslog.txt
 tn_dpsd_top.txt
Live chat
Online