rdma_rxe vmcore analysis



crash> bt -s
PID: 2439   TASK: ffff973578eb44c0  CPU: 1   COMMAND: "iptables"
 #0 [ffff97357fd036b8] machine_kexec+462 at ffffffffa505a30e
 #1 [ffff97357fd03710] __crash_kexec+97 at ffffffffa5117771
 #2 [ffff97357fd037d0] crash_kexec+56 at ffffffffa5118428
 #3 [ffff97357fd037e8] oops_end+163 at ffffffffa502f263
 #4 [ffff97357fd03808] no_context+425 at ffffffffa506a209
 #5 [ffff97357fd03860] __do_page_fault+212 at ffffffffa506a9a4
 #6 [ffff97357fd038d0] async_page_fault+37 at ffffffffa5a01315
 #7 [ffff97357fd03988] rxe_elem_release+32 at ffffffffc0546090 [rdma_rxe]
 #8 [ffff97357fd039a0] rxe_responder+3014 at ffffffffc0543ab6 [rdma_rxe]
 #9 [ffff97357fd03a90] rxe_do_task+137 at ffffffffc054c1e9 [rdma_rxe]
#10 [ffff97357fd03ab8] rxe_rcv+1122 at ffffffffc05455e2 [rdma_rxe]
#11 [ffff97357fd03b58] udp_queue_rcv_skb+491 at ffffffffa582e0cb
#12 [ffff97357fd03b88] __udp4_lib_rcv+1333 at ffffffffa582f2f5
#13 [ffff97357fd03c08] ip_local_deliver_finish+152 at ffffffffa57fb558
#14 [ffff97357fd03c28] ip_local_deliver+107 at ffffffffa57fb82b
#15 [ffff97357fd03c78] ip_rcv+649 at ffffffffa57fbb29
#16 [ffff97357fd03cd8] __netif_receive_skb_core+2169 at ffffffffa57af019
#17 [ffff97357fd03d88] netif_receive_skb_internal+52 at ffffffffa57b14f4
#18 [ffff97357fd03db0] napi_gro_receive+191 at ffffffffa57b21df
#19 [ffff97357fd03dd0] e1000_clean_rx_irq+348 at ffffffffc00b3f0c [e1000]
#20 [ffff97357fd03e68] e1000_clean+637 at ffffffffc00b47fd [e1000]
#21 [ffff97357fd03ee8] net_rx_action+638 at ffffffffa57b1a6e
#22 [ffff97357fd03f60] __softirqentry_text_start+245 at ffffffffa5c000f5
#23 [ffff97357fd03fb8] irq_exit+174 at ffffffffa508655e
#24 [ffff97357fd03fc0] do_IRQ+74 at ffffffffa5a01e4a
--- <IRQ stack> ---
bt: cannot transition from IRQ stack to current process stack:
        IRQ stack pointer: ffff97357fd036b8
    process stack pointer: ffffb2f940897dc0
       current stack base: ffffb2f940894000
crash> mod -s rdma_rxe
     MODULE       NAME                     SIZE  OBJECT FILE
ffffffffc055b280  rdma_rxe               126976  /mnt/sdd/201804030156/rdma_rxe.ko
crash> dis -r rxe_elem_release+32
0xffffffffc0546070 <rxe_elem_release>:  nopl   0x0(%rax,%rax,1) [FTRACE NOP]
0xffffffffc0546075 <rxe_elem_release+5>:        push   %rbp
0xffffffffc0546076 <rxe_elem_release+6>:        push   %rbx
0xffffffffc0546077 <rxe_elem_release+7>:        lea    -0x8(%rdi),%rbp
0xffffffffc054607b <rxe_elem_release+11>:       mov    -0x8(%rdi),%rbx
0xffffffffc054607f <rxe_elem_release+15>:       mov    0x20(%rbx),%rax
0xffffffffc0546083 <rxe_elem_release+19>:       test   %rax,%rax
0xffffffffc0546086 <rxe_elem_release+22>:       je     0xffffffffc0546090 <rxe_elem_release+32>
0xffffffffc0546088 <rxe_elem_release+24>:       mov    %rbp,%rdi
0xffffffffc054608b <rxe_elem_release+27>:       callq  0xffffffffa5c03000 <__entry_trampoline_end>
0xffffffffc0546090 <rxe_elem_release+32>:       mov    0x30(%rbx),%eax
crash> whatis rxe_elem_release
void rxe_elem_release(struct kref *);
crash> bt -f
PID: 2439   TASK: ffff973578eb44c0  CPU: 1   COMMAND: "iptables"
 #0 [ffff97357fd036b8] machine_kexec at ffffffffa505a30e
    ffff97357fd036c0: 00001b03fe80b700 ffff973500000000
    ffff97357fd036d0: 000000002b001000 ffff97352b001000
    ffff97357fd036e0: 000000002b000000 81a0200101020800
    ffff97357fd036f0: ffa01b03fe80b700 ffff97357fd038d8
    ffff97357fd03700: 0000000000000009 ffff97357fd038d8
    ffff97357fd03710: ffffffffa5117771
 #1 [ffff97357fd03710] __crash_kexec at ffffffffa5117771
    ffff97357fd03718: 00000000ecf6ab4f ffff973578e98810
    ffff97357fd03728: 000000000000001d 0000000000000296
    ffff97357fd03738: ffff973578e98810 ffff973578e99020
    ffff97357fd03748: 0000000000000001 ffff97357fd037a8
    ffff97357fd03758: ffff9735355e7e18 ffff973578eb44c0
    ffff97357fd03768: 0000000000000af0 0000000000000004
    ffff97357fd03778: ffff973578e98b50 0000000000000296
    ffff97357fd03788: ffff973578e98810 ffffffffffffffff
    ffff97357fd03798: 0000000000000af0 0000000000000010
    ffff97357fd037a8: 0000000000010206 ffff97357fd03988
    ffff97357fd037b8: 0000000000000018 ffa01b03fe80b700
    ffff97357fd037c8: ffff97357fd038d8 ffffffffa5118428
 #2 [ffff97357fd037d0] crash_kexec at ffffffffa5118428
    ffff97357fd037d8: ffffffff00000000 0000000000000046
    ffff97357fd037e8: ffffffffa502f263
 #3 [ffff97357fd037e8] oops_end at ffffffffa502f263
    ffff97357fd037f0: 0000000000000af0 ffff97357fd038d8
    ffff97357fd03800: 0000000000000009 ffffffffa506a209
 #4 [ffff97357fd03808] no_context at ffffffffa506a209
    ffff97357fd03810: 0000000000000009 ffff97357fd038d8
    ffff97357fd03820: 0000000000000046 ffa01b03fe80b700
    ffff97357fd03830: 0000000000000010 ffff97357fd038d8
    ffff97357fd03840: 0000000000000af0 0000000000000000
    ffff97357fd03850: 0000000000000000 ffff973578eb44c0
    ffff97357fd03860: ffffffffa506a9a4
 #5 [ffff97357fd03860] __do_page_fault at ffffffffa506a9a4
    ffff97357fd03868: 0000000000000070 ffff97357fd038d8
    ffff97357fd03878: 0000000000000046 0000000000000001
    ffff97357fd03888: ffffffffa50aa6c5 ffff973535015280
    ffff97357fd03898: ffa01b03fe80b700 0000000000000001
    ffff97357fd038a8: 0000000000000000 0000000000000000
    ffff97357fd038b8: 0000000000000000 0000000000000000
    ffff97357fd038c8: 0000000000000000 ffffffffa5a01315
 #6 [ffff97357fd038d0] async_page_fault at ffffffffa5a01315
    ffff97357fd038d8: 00000000ecf6ab4f ffff973578e98810
    ffff97357fd038e8: 000000000000001d 0000000000000296
    ffff97357fd038f8: ffff973578e98810 ffff973578e99020
    ffff97357fd03908: 0000000000000001 ffff97357fd037a8
    ffff97357fd03918: ffff9735355e7e18 ffff973578eb44c0
    ffff97357fd03928: 0000000000000af0 0000000000000004
    ffff97357fd03938: ffff973578e98b50 0000000000000296
    ffff97357fd03948: ffff973578e98810 ffffffffffffffff
    ffff97357fd03958: 0000000000000af0 0000000000000010
    ffff97357fd03968: 0000000000010206 ffff97357fd03988
    ffff97357fd03978: 0000000000000018 0000000000000af0
    ffff97357fd03988: ffffffffc0546090
 #7 [ffff97357fd03988] rxe_elem_release at ffffffffc0546090 [rdma_rxe]
    ffff97357fd03990: 00000000fffffff5 ffff973578e98818
    ffff97357fd039a0: ffffffffc0543ab6
 #8 [ffff97357fd039a0] rxe_responder at ffffffffc0543ab6 [rdma_rxe]
    ffff97357fd039a8: ffff973579ec3cf6 ffff973577e40000
    ffff97357fd039b8: ffffffffc054084c ffff973578e98c38
    ffff97357fd039c8: 0000000000000000 ffa01b03fe80b700
    ffff97357fd039d8: ffff973579ec3cf6 00000000ecf6ab4f
    ffff97357fd039e8: 0000000000000000 1ffff2e6affa0742
    ffff97357fd039f8: ffff97357fd03a10 ffff97357fd03ab0
    ffff97357fd03a08: ffffffffc054bba9 ffff973579e07a80
    ffff97357fd03a18: 0000000000000000 0000008000000000
    ffff97357fd03a28: 0000001000000000 0000001178e98850
    ffff97357fd03a38: 0000000100000000 0001000000000000
    ffff97357fd03a48: 0000000000000000 0000000000000000
    ffff97357fd03a58: ffa01b03fe80b700 ffff973578e98f28
    ffff97357fd03a68: ffff973578e98f5c 0000000000000296
    ffff97357fd03a78: 0000000000000000 ffff9735765bfd00
    ffff97357fd03a88: 00000000ecf6ab4f ffffffffc054c1e9
 #9 [ffff97357fd03a90] rxe_do_task at ffffffffc054c1e9 [rdma_rxe]
    ffff97357fd03a98: ffff973577e40000 ffff97357fd03b40

lea    -0x8(%rdi),%rbp means rbp = rdi -0x8
so rdi = rbp + 0x8
...
 #7 [ffff97357fd03988] rxe_elem_release at ffffffffc0546090 [rdma_rxe]
    ffff97357fd03990: 00000000fffffff5 ffff973578e98818
    ffff97357fd039a0: ffffffffc0543ab6
...
rbp is ffff97357fd039a0

crash> eval 0xffff97357fd039a0 + 0x8
hexadecimal: ffff97357fd039a8
    decimal: 18446628854766254504  (-115218943297112)
      octal: 1777774563257764034650
     binary: 1111111111111111100101110011010101111111110100000011100110101000
crash> struct kref
struct kref {
    refcount_t refcount;
}
SIZE: 4
crash> rd ffff97357fd039a8
ffff97357fd039a8:  ffff973579ec3cf6                    .<.y5...
crash> struct kref ffff973579ec3cf6
struct kref {
  refcount = {
    refs = {
      counter = 0
    }
  }
}

The counter is 0.

crash> struct rxe_qp -o
struct rxe_qp {
     [0] struct rxe_pool_entry pelem;
    [64] struct ib_qp ibqp;
   [344] struct ib_qp_attr attr;
   [512] unsigned int valid;
   [516] unsigned int mtu;
   [520] int is_user;
   [528] struct rxe_pd *pd;
   [536] struct rxe_srq *srq;
   [544] struct rxe_cq *scq;
   [552] struct rxe_cq *rcq;
   [560] enum ib_sig_type sq_sig_type;
   [568] struct rxe_sq sq;
   [592] struct rxe_rq rq;
   [616] struct socket *sk;
   [624] u32 dst_cookie;
   [632] struct rxe_av pri_av;
   [720] struct rxe_av alt_av;
   [808] struct list_head grp_list;
   [824] spinlock_t grp_lock;
   [832] struct sk_buff_head req_pkts;
   [856] struct sk_buff_head resp_pkts;
   [880] struct sk_buff_head send_pkts;
   [904] struct rxe_req_info req;
  [1040] struct rxe_comp_info comp;
  [1160] struct rxe_resp_info resp;
  [1912] atomic_t ssn;
  [1916] atomic_t skb_out;
  [1920] int need_req_skb;
  [1928] struct timer_list retrans_timer;
  [1968] u64 qp_timeout_jiffies;
  [1976] struct timer_list rnr_nak_timer;
  [2016] spinlock_t state_lock;
  [2024] struct execute_work cleanup_work;
}
SIZE: 2056
crash> struct rxe_pool_entry -o
struct rxe_pool_entry {
   [0] struct rxe_pool *pool;
   [8] struct kref ref_cnt;
  [16] struct list_head list;
  [32] struct rb_node node;
  [56] u32 index;
}
SIZE: 64
crash> eval 8
hexadecimal: 8
    decimal: 8
      octal: 10
     binary: 0000000000000000000000000000000000000000000000000000000000001000
crash> eval 0xffff973579ec3cf6 - 0x8
hexadecimal: ffff973579ec3cee
    decimal: 18446628854667427054  (-115219042124562)
      octal: 1777774563257173036356
     binary: 1111111111111111100101110011010101111001111011000011110011101110
crash> struct rxe_pool_entry 0xffff973579ec3cee
struct rxe_pool_entry {
  pool = 0x1df2318011000000,
  ref_cnt = {
    refcount = {
      refs = {
        counter = 0
      }
    }
  },
  list = {
    next = 0x4000000011040000,
    prev = 0x46454443a3834456
  },
  node = {
    __rb_parent_color = 6799692559826901079,
    rb_right = 0x666564636261605f,
    rb_left = 0x6e6d6c6b6a696867
  },
  index = 1920036975
}
crash> struct rxe_qp -o
struct rxe_qp {
     [0] struct rxe_pool_entry pelem;
    [64] struct ib_qp ibqp;
   [344] struct ib_qp_attr attr;
   [512] unsigned int valid;
   [516] unsigned int mtu;
   [520] int is_user;
   [528] struct rxe_pd *pd;
   [536] struct rxe_srq *srq;
   [544] struct rxe_cq *scq;
   [552] struct rxe_cq *rcq;
   [560] enum ib_sig_type sq_sig_type;
   [568] struct rxe_sq sq;
   [592] struct rxe_rq rq;
   [616] struct socket *sk;
   [624] u32 dst_cookie;
   [632] struct rxe_av pri_av;
   [720] struct rxe_av alt_av;
   [808] struct list_head grp_list;
   [824] spinlock_t grp_lock;
   [832] struct sk_buff_head req_pkts;
   [856] struct sk_buff_head resp_pkts;
   [880] struct sk_buff_head send_pkts;
   [904] struct rxe_req_info req;
  [1040] struct rxe_comp_info comp;
  [1160] struct rxe_resp_info resp;
  [1912] atomic_t ssn;
  [1916] atomic_t skb_out;
  [1920] int need_req_skb;
  [1928] struct timer_list retrans_timer;
  [1968] u64 qp_timeout_jiffies;
  [1976] struct timer_list rnr_nak_timer;
  [2016] spinlock_t state_lock;
  [2024] struct execute_work cleanup_work;
}
SIZE: 2056

crash> struct rxe_qp 0xffff973579ec3cee
struct rxe_qp {
  pelem = {
    pool = 0x1df2318011000000,
    ref_cnt = {
      refcount = {
        refs = {
          counter = 0
        }
      }
    },
    list = {
      next = 0x4000000011040000,
      prev = 0x46454443a3834456
    },
    node = {
      __rb_parent_color = 6799692559826901079,
      rb_right = 0x666564636261605f,
      rb_left = 0x6e6d6c6b6a696867
    },
    index = 1920036975
  },
  ibqp = {
    device = 0x444342417a797877,
    pd = 0x6659090500474645,
    send_cq = 0x0,
    recv_cq = 0x0,
    mr_lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    },
    mrs_used = 0,
    rdma_mrs = {
      next = 0x0,
      prev = 0x8ae4000000010000
    },
    sig_mrs = {
      next = 0x8a7a5a5160290f62,
      prev = 0x0
    },
    srq = 0x0,
    xrcd = 0x0,
    xrcd_list = {
      next = 0x0,
      prev = 0x0
    },
    usecnt = {
      counter = 0
    },
    open_list = {
      next = 0x10000,
      prev = 0x0
    },
    real_qp = 0x0,
    uobject = 0x0,
    event_handler = 0x0,
    qp_context = 0x0,
    qp_num = 0,
    max_write_sge = 0,
    max_read_sge = 0,
    qp_type = IB_QPT_SMI,
    rwq_ind_tbl = 0x0,
    qp_sec = 0x0,
    port = 0 '\000',
    res = {
      valid = false,
      kref = {
        refcount = {
          refs = {
            counter = 0
          }
        }
      },
      comp = {
        done = 0,
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  val = {
                    counter = 0
                  }
                }
              }
            }
          },
          head = {
            next = 0x0,
            prev = 0x0
          }
        }
      },
      task = 0x0,
      kern_name = 0x0,
      node = {
        next = 0x0,
        pprev = 0x0
      },
      type = RDMA_RESTRACK_PD
    }
  },
  attr = {
    qp_state = IB_QPS_RESET,
    cur_qp_state = IB_QPS_RESET,
    path_mtu = 0,
    path_mig_state = IB_MIG_MIGRATED,
    qkey = 0,
    rq_psn = 0,
    sq_psn = 0,
    dest_qp_num = 0,
    qp_access_flags = 0,
    cap = {
      max_send_wr = 0,
      max_recv_wr = 0,
      max_send_sge = 0,
      max_recv_sge = 0,
      max_inline_data = 0,
      max_rdma_ctxs = 0
    },
    ah_attr = {
      grh = {
        dgid = {
          raw = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
          global = {
            subnet_prefix = 0,
            interface_id = 0
          }
        },
        flow_label = 0,
        sgid_index = 0 '\000',
        hop_limit = 0 '\000',
        traffic_class = 0 '\000'
      },
      sl = 0 '\000',
      static_rate = 0 '\000',
      port_num = 0 '\000',
      ah_flags = 0 '\000',
      type = RDMA_AH_ATTR_TYPE_UNDEFINED,
      {
        ib = {
          dlid = 0,
          src_path_bits = 0 '\000'
        },
        roce = {
          dmac = "\000\000\000\000\000"
        },
        opa = {
          dlid = 0,
          src_path_bits = 0 '\000',
          make_grd = false
        }
      }
    },
    alt_ah_attr = {
      grh = {
        dgid = {
          raw = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
          global = {
            subnet_prefix = 0,
            interface_id = 0
          }
        },
        flow_label = 1414660096,
        sgid_index = 0 '\000',
        hop_limit = 18 '\022',
        traffic_class = 52 '4'
      },
      sl = 82 'R',
      static_rate = 84 'T',
      port_num = 0 '\000',
      ah_flags = 18 '\022',
      type = 546612,
      {
        ib = {
          dlid = 69,
          src_path_bits = 0 '\000'
        },
        roce = {
          dmac = "E\000\000\060\061E"
        },
        opa = {
          dlid = 805306437,
          src_path_bits = 49 '1',
          make_grd = 69
        }
      }
    },
    pkey_index = 4416,
    alt_pkey_index = 7927,
    en_sqd_async_notify = 192 '\300',
    sq_draining = 168 '\250',
    max_rd_atomic = 200 '\310',
    max_dest_rd_atomic = 132 '\204',
    min_rnr_timer = 192 '\300',
    port_num = 168 '\250',
    timeout = 200 '\310',
    retry_cnt = 131 '\203',
    rnr_retry = 192 '\300',
    alt_port_num = 0 '\000',
    alt_timeout = 18 '\022',
    rate_limit = 7168
  },
  valid = 285212672,
  mtu = 3312813824,
  is_user = -277544929,
  pd = 0x5634120022050000,
  srq = 0x8573412005452,
  scq = 0x4007313c000045,
  rcq = 0x84c8a8c050f71140,
  sq_sig_type = (unknown: 2210965696),
  sq = {
    max_wr = 10240,
    max_sge = -65532,
    max_inline = 285212672,
    sq_lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 150090112
            }
          }
        }
      }
    },
    queue = 0xa029ee0100000000
  },
  rq = {
    max_wr = 0,
    max_sge = 0,
    producer_lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    },
    consumer_lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    },
    queue = 0x0
  },
  sk = 0x0,
  dst_cookie = 65536,
  pri_av = {
    port_num = 0 '\000',
    network_type = 0 '\000',
    grh = {
      dgid = {
        raw = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
        global = {
          subnet_prefix = 0,
          interface_id = 0
        }
      },
      flow_label = 0,
      sgid_index = 0 '\000',
      hop_limit = 0 '\000',
      traffic_class = 0 '\000'
    },
    sgid_addr = {
      _sockaddr = {
        sa_family = 0,
        sa_data = "\000\000\000\000\000\000\000\000\000\000\000\000\000"
      },
      _sockaddr_in = {
        sin_family = 0,
        sin_port = 0,
        sin_addr = {
          s_addr = 0
        },
        __pad = "\000\000\000\000\000\000\000"
      },
      _sockaddr_in6 = {
        sin6_family = 0,
        sin6_port = 0,
        sin6_flowinfo = 0,
        sin6_addr = {
          in6_u = {
            u6_addr8 = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
            u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0},
            u6_addr32 = {0, 0, 0, 0}
          }
        },
        sin6_scope_id = 65536
      }
    },
    dgid_addr = {
      _sockaddr = {
        sa_family = 0,
        sa_data = "\000\000\000\000\000\000\000\000\000\000\000\000\000"
      },
      _sockaddr_in = {
        sin_family = 0,
        sin_port = 0,
        sin_addr = {
          s_addr = 0
        },
        __pad = "\000\000\000\000\000\000\000"
      },
      _sockaddr_in6 = {
        sin6_family = 0,
        sin6_port = 0,
        sin6_flowinfo = 0,
        sin6_addr = {
          in6_u = {
            u6_addr8 = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
            u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0},
            u6_addr32 = {0, 0, 0, 0}
          }
        },
        sin6_scope_id = 0
      }
    }
  },
  alt_av = {
    port_num = 0 '\000',
    network_type = 0 '\000',
    grh = {
      dgid = {
        raw = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
        global = {
          subnet_prefix = 0,
          interface_id = 0
        }
      },
      flow_label = 0,
      sgid_index = 0 '\000',
      hop_limit = 0 '\000',
      traffic_class = 0 '\000'
    },
    sgid_addr = {
      _sockaddr = {
        sa_family = 0,
        sa_data = "\000\000\000\000\000\000\000\000\000\000\000\000\000"
      },
      _sockaddr_in = {
        sin_family = 0,
        sin_port = 0,
        sin_addr = {
          s_addr = 0
        },
        __pad = "\000\000\000\000\000\000\000"
      },
      _sockaddr_in6 = {
        sin6_family = 0,
        sin6_port = 0,
        sin6_flowinfo = 0,
        sin6_addr = {
          in6_u = {
            u6_addr8 = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
            u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0},
            u6_addr32 = {0, 0, 0, 0}
          }
        },
        sin6_scope_id = 0
      }
    },
    dgid_addr = {
      _sockaddr = {
        sa_family = 0,
        sa_data = "\000\000\000\000\000\000\000\000\000\000\000\000\000"
      },
      _sockaddr_in = {
        sin_family = 0,
        sin_port = 0,
        sin_addr = {
          s_addr = 0
        },
        __pad = "\000\000\000\000\000\000\000"
      },
      _sockaddr_in6 = {
        sin6_family = 0,
        sin6_port = 0,
        sin6_flowinfo = 0,
        sin6_addr = {
          in6_u = {
            u6_addr8 = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
            u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0},
            u6_addr32 = {0, 0, 0, 0}
          }
        },
        sin6_scope_id = 0
      }
    }
  },
  grp_list = {
    next = 0x0,
    prev = 0x0
  },
  grp_lock = {
    {
      rlock = {
        raw_lock = {
          val = {
            counter = 0
          }
        }
      }
    }
  },
  req_pkts = {
    next = 0x0,
    prev = 0x0,
    qlen = 0,
    lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    }
  },
  resp_pkts = {
    next = 0x0,
    prev = 0x0,
    qlen = 0,
    lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    }
  },
  send_pkts = {
    next = 0x0,
    prev = 0x0,
    qlen = 0,
    lock = {
      {
        rlock = {
          raw_lock = {
            val = {
              counter = 0
            }
          }
        }
      }
    }
  },
  req = {
    state = QP_STATE_RESET,
    wqe_index = 0,
    psn = 0,
    opcode = 0,
    rd_atomic = {
      counter = 0
    },
    wait_fence = 0,
    need_rd_atomic = 0,
    wait_psn = 0,
    need_retry = 0,
    noack_pkts = 0,
    task = {
      obj = 0x0,
      tasklet = {
        next = 0x0,
        state = 0,
        count = {
          counter = 0
        },
        func = 0x5634120054520000,
        data = 2347680965612626
      },
      state = 1879048261,
      state_lock = {
        {
          rlock = {
            raw_lock = {
              val = {
                counter = 4211761
              }
            }
          }
        }
      },
      arg = 0x84c8a8c0dff61140,
      func = 0xb71200c083c8a8c0,
      ret = 23552,
      name = "\020\000\377\377\000\000\000\021\000\207u\304\037\000", <incomplete sequence \356>,
      destroyed = 114
    }
  },
  comp = {
    psn = 1852403757,
    opcode = 808529255,
    timeout = 976434736,
    timeout_retry = 1616862752,
    retry_cnt = 1684234849,
    rnr_retry = 1751606885,
    task = {
      obj = 0x706f6e6d6c6b6a69,
      tasklet = {
        next = 0x7877767574737271,
        state = 5063528411713075833,
        count = {
          counter = 1246316615
        },
        func = 0x3e78fafe0051504f,
        data = 4611686018427387904
      },
      state = 829664997,
      state_lock = {
        {
          rlock = {
            raw_lock = {
              val = {
                counter = 1802135912
              }
            }
          }
        }
      },
      arg = 0xfc8e800f31dbbcb8,
      func = 0xbae1a8f39df0116a,
      ret = 0,
      name = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
      destroyed = false
    }
  },
  resp = {
    state = QP_STATE_RESET,
    msn = 0,
    psn = 0,
    opcode = 0,
    drop_msg = 0,
    goto_error = 0,
    sent_psn_nak = 0,
    status = IB_WC_SUCCESS,
    aeth_syndrome = 0 '\000',
    wqe = 0x10000,
    va = 0,
    mr = 0x0,
    resid = 0,
    rkey = 0,
    atomic_orig = 0,
    srq_wqe = {
      wqe = {
        wr_id = 0,
        num_sge = 0,
        padding = 0,
        dma = {
          length = 0,
          resid = 0,
          cur_sge = 0,
          num_sge = 0,
          sge_offset = 0,
          {
            inline_data = 0xffff973579ec41ee "",
            sge = 0xffff973579ec41ee
          }
        }
      },
      sge = {{
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 6211609578674716672,
          length = 302011474,
          lkey = 546612
        }, {
          addr = 18088277248573509,
          length = 351736128,
          lkey = 2227742912
        }, {
          addr = 13191607085366290624,
          length = 10240,
          lkey = 4294901764
        }, {
          addr = 2085784003536748544,
          length = 0,
          lkey = 2687102465
        }, {
          addr = 4611686018998140928,
          length = 364605222,
          lkey = 1768449894
        }, {
          addr = 6872032732664977752,
          length = 1667391840,
          lkey = 1734763876
        }, {
          addr = 8029475498074204520,
          length = 1936879984,
          lkey = 2004252020
        }, {
          addr = 4991188238878800248,
          length = 4736838,
          lkey = 1719736295
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 65536,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 0,
          length = 0,
          lkey = 0
        }, {
          addr = 65536,
          length = 0,
          lkey = 0
        }}
    },
    resources = 0x0,
    res_head = 0,
    res_tail = 0,
    res = 0x0,
    task = {
      obj = 0x0,
      tasklet = {
        next = 0x0,
        state = 0,
        count = {
          counter = 0
        },
        func = 0x0,
        data = 0
      },
      state = 0,
      state_lock = {
        {
          rlock = {
            raw_lock = {
              val = {
                counter = 0
              }
            }
          }
        }
      },
      arg = 0x0,
      func = 0x0,
      ret = 0,
      name = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000",
      destroyed = false
    }
  },
  ssn = {
    counter = 0
  },
  skb_out = {
    counter = 0
  },
  need_req_skb = 0,
  retrans_timer = {
    entry = {
      next = 0x0,
      pprev = 0x0
    },
    expires = 0,
    function = 0x0,
    flags = 0
  },
  qp_timeout_jiffies = 0,
  rnr_nak_timer = {
    entry = {
      next = 0x0,
      pprev = 0x0
    },
    expires = 0,
    function = 0x0,
    flags = 0
  },
  state_lock = {
    {
      rlock = {
        raw_lock = {
          val = {
            counter = 0
          }
        }
      }
    }
  },
  cleanup_work = {
    work = {
      data = {
        counter = 0
      },
      entry = {
        next = 0x0,
        prev = 0x0
      },
      func = 0x0
    }
  }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

mounter625

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值