Comment 89 for bug 1711407

Revision history for this message
lirongqing (lirongqing) wrote :

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>