I have the same issue, and I dump the vmcore, and find dst cache, hope it has 
some help.
this leaked dst is in dst_busy_list, except dst_busy_list, nowhere I can find 
it in
==============================
First case:

crash> rtable 0xffff880036fbba00 -x
struct rtable {
  dst = {
    callback_head = {
      next = 0xffff880036fbb300, 
      func = 0x0
    }, 
    child = 0x0, 
    dev = 0xffff8817f15c3000, 
    ops = 0xffffffff8191f2c0 <ipv4_dst_ops>, 
    _metrics = 0xffffffff815ef7d1, 
    expires = 0x0, 
    path = 0xffff880036fbba00, 
    from = 0x0, 
    xfrm = 0x0, 
    input = 0xffffffff8149f777 <dst_discard>, 
    {
      output = 0xffffffff8149f762 <dst_discard_sk>, 
      __UNIQUE_ID_rh_kabi_hide29 = {
        output = 0xffffffff8149f762 <dst_discard_sk>
      }, 
      {<No data fields>}
    }, 
    flags = 0x0, 
    pending_confirm = 0x0, 
    error = 0x0, 
    obsolete = 0x2, 
    header_len = 0x0, 
    trailer_len = 0x0, 
    tclassid = 0x0, 
    __pad_to_align_refcnt = {0xe, 0x8006000000000}, 
    __refcnt = {
      counter = 0x1
    }, 
    __use = 0x0, 
    lastuse = 0x1000860b0, 
    {
      next = 0xffff882fdaaa9800, 
      rt_next = 0xffff882fdaaa9800, 
      rt6_next = 0xffff882fdaaa9800, 
      dn_next = 0xffff882fdaaa9800
    }, 
    rh_reserved1 = 0x2, 
    rh_reserved2 = 0x85987845, 
    rh_reserved3 = 0x0, 
    rh_reserved4 = 0x0
  }, 
  rt_genid = 0x11, 
  rt_flags = 0x80000000, 
  rt_type = 0x2, 
  rt_is_input = 0x1, 
  rt_uses_gateway = 0x0, 
  rt_iif = 0x0, 
  rt_gateway = 0x0, 
  rt_pmtu = 0x0, 
  rt_uncached = {
    next = 0xffff880036fbbac0, 
    prev = 0xffff880036fbbac0
  }
}
crash> 
=========================
seconds case:
crash> rtable  ffff8807ec0d9a00 -x
struct rtable {
  dst = {
    callback_head = {
      next = 0xffff8807ec0db900, 
      func = 0xffffffff8119e250 <file_free_rcu>
    }, 
    child = 0x0, 
    dev = 0xffff8817ed384800, 
    ops = 0xffffffff81b18bc0 <ipv4_dst_ops>, 
    _metrics = 0xffffffff817ca681, 
    expires = 0x0, 
    path = 0xffff8807ec0d9a00, 
    from = 0x0, 
    xfrm = 0x0, 
    input = 0xffffffff8162b200 <dst_discard>, 
    {
      output = 0xffffffff8162b1e0 <dst_discard_sk>, 
      __UNIQUE_ID_rh_kabi_hide29 = {
        output = 0xffffffff8162b1e0 <dst_discard_sk>
      }, 
      {<No data fields>}
    }, 
    flags = 0x6, 
    pending_confirm = 0x0, 
    error = 0x0, 
    obsolete = 0x2, 
    header_len = 0x0, 
    trailer_len = 0x0, 
    tclassid = 0x0, 
    __pad_to_align_refcnt = {0xffff880f6df8fec0, 0x0}, 
    __refcnt = {
      counter = 0x1
    }, 
    __use = 0x0, 
    lastuse = 0x1fcce9056, 
    {
      next = 0xffff880404f49400, 
      rt_next = 0xffff880404f49400, 
      rt6_next = 0xffff880404f49400, 
      dn_next = 0xffff880404f49400
    }, 
    rh_reserved1 = 0x0, 
    rh_reserved2 = 0x0, 
    rh_reserved3 = 0x0, 
    rh_reserved4 = 0x0
  }, 
  rt_genid = 0x16, 
  rt_flags = 0x80000000, 
  rt_type = 0x2, 
  rt_is_input = 0x0, 
  rt_uses_gateway = 0x0, 
  rt_iif = 0x0, 
  rt_gateway = 0x0, 
  rt_pmtu = 0x0, 
  rt_uncached = {
    next = 0xffff8807ec0d9ac0, 
    prev = 0xffff8807ec0d9ac0
  }
}
crash>

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1711407

Title:
  unregister_netdevice: waiting for lo to become free

Status in linux package in Ubuntu:
  In Progress
Status in linux source package in Trusty:
  In Progress
Status in linux source package in Xenial:
  In Progress
Status in linux source package in Zesty:
  Won't Fix
Status in linux source package in Artful:
  In Progress
Status in linux source package in Bionic:
  In Progress

Bug description:
  This is a "continuation" of bug 1403152, as that bug has been marked
  "fix released" and recent reports of failure may (or may not) be a new
  bug.  Any further reports of the problem should please be reported
  here instead of that bug.

  --

  [Impact]

  When shutting down and starting containers the container network
  namespace may experience a dst reference counting leak which results
  in this message repeated in the logs:

      unregister_netdevice: waiting for lo to become free. Usage count =
  1

  This can cause issues when trying to create net network namespace and
  thus block a user from creating new containers.

  [Test Case]

  See comment 16, reproducer provided at https://github.com/fho/docker-
  samba-loop

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1711407/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to