dump rhashtable and encap and decap flows
来源:互联网 发布:sql case when怎么用 编辑:程序博客网 时间:2024/06/05 16:00
crash> mlx5e_flow_steering.tc ffff880c6a724418 tc = { t = 0x0, ht_params = { nelem_hint = 0x0, key_len = 0x8, key_offset = 0x8, head_offset = 0x0, max_size = 0x0, min_size = 0x0, automatic_shrinking = 0x1, locks_mul = 0x0, nulls_base = 0x0, hashfn = 0x0, obj_hashfn = 0x0, obj_cmpfn = 0x0 }, ht = { tbl = 0xffff880b8327a800, nelems = { counter = 0x2 }, key_len = 0x2, p = { nelem_hint = 0x0, key_len = 0x8, key_offset = 0x8, head_offset = 0x0, max_size = 0x0, min_size = 0x4, automatic_shrinking = 0x1, locks_mul = 0x20, nulls_base = 0x0, hashfn = 0xffffffff81374d80 <rhashtable_jhash2>, obj_hashfn = 0x0, obj_cmpfn = 0x0 }, max_elems = 0x80000000, rhlist = 0x0, run_work = { data = { counter = 0xfffffffe0 }, entry = { next = 0xffff880c6a724570, prev = 0xffff880c6a724570 }, func = 0xffffffff81375120 <rht_deferred_worker> }, mutex = { owner = { counter = 0x0 }, wait_lock = { { rlock = { raw_lock = { val = { counter = 0x0 } } } } }, osq = { tail = { counter = 0x0 } }, wait_list = { next = 0xffff880c6a724598, prev = 0xffff880c6a724598 } }, lock = { { rlock = { raw_lock = { val = { counter = 0x0 } } } } } } }crash> bucket_table 0xffff880b8327a800struct bucket_table { size = 0x40, nest = 0x0, rehash = 0x0, hash_rnd = 0xe9e71c0f, locks_mask = 0x1f, locks = 0xffff880ba6e96280, walkers = { next = 0xffff880b8327a820, prev = 0xffff880b8327a820 }, rcu = { next = 0x0, func = 0x0 }, future_tbl = 0x0, buckets = 0xffff880b8327a880}crash> rd 0xffff880b8327a880 64ffff880b8327a880: 0000000000000001 0000000000000003 ................ffff880b8327a890: 0000000000000005 0000000000000007 ................ffff880b8327a8a0: 0000000000000009 000000000000000b ................ffff880b8327a8b0: 000000000000000d 000000000000000f ................ffff880b8327a8c0: 0000000000000011 0000000000000013 ................ffff880b8327a8d0: 0000000000000015 0000000000000017 ................ffff880b8327a8e0: 0000000000000019 000000000000001b ................ffff880b8327a8f0: 000000000000001d 000000000000001f ................ffff880b8327a900: 0000000000000021 0000000000000023 !.......#.......ffff880b8327a910: 0000000000000025 0000000000000027 %.......'.......ffff880b8327a920: 0000000000000029 000000000000002b ).......+.......ffff880b8327a930: 000000000000002d 000000000000002f -......./.......ffff880b8327a940: 0000000000000031 0000000000000033 1.......3.......ffff880b8327a950: 0000000000000035 0000000000000037 5.......7.......ffff880b8327a960: 0000000000000039 000000000000003b 9.......;.......ffff880b8327a970: 000000000000003d 000000000000003f =.......?.......ffff880b8327a980: 0000000000000041 0000000000000043 A.......C.......ffff880b8327a990: 0000000000000045 0000000000000047 E.......G.......ffff880b8327a9a0: 0000000000000049 000000000000004b I.......K.......ffff880b8327a9b0: 000000000000004d 000000000000004f M.......O.......ffff880b8327a9c0: 0000000000000051 0000000000000053 Q.......S.......ffff880b8327a9d0: 0000000000000055 0000000000000057 U.......W.......ffff880b8327a9e0: 0000000000000059 000000000000005b Y.......[.......ffff880b8327a9f0: 000000000000005d 000000000000005f ]......._.......ffff880b8327aa00: 0000000000000061 0000000000000063 a.......c.......ffff880b8327aa10: 0000000000000065 0000000000000067 e.......g.......ffff880b8327aa20: 0000000000000069 000000000000006b i.......k.......ffff880b8327aa30: ffff880a9b2a58a0 000000000000006f .X*.....o.......ffff880b8327aa40: 0000000000000071 0000000000000073 q.......s.......ffff880b8327aa50: 0000000000000075 0000000000000077 u.......w.......ffff880b8327aa60: 0000000000000079 000000000000007b y.......{.......ffff880b8327aa70: ffff880c5a4686c0 000000000000007f ..FZ............struct mlx5e_tc_flow { node = { next = 0x6d }, cookie = 0xffff880b432f4800, flags = 0x5, rule = 0xffff880c20f48d40, encap = { next = 0x0, prev = 0x0 }, { esw_attr = 0xffff880a9b2a58d0, nic_attr = 0xffff880a9b2a58d0 }}crash> mlx5_esw_flow_attr 0xffff880a9b2a58d0struct mlx5_esw_flow_attr { in_rep = 0xffff880c823e7e00, out_rep = 0xffff880c823e7e48, action = 0x2c, vlan = 0x0, vlan_handled = 0x0, encap_id = 0x0, mod_hdr_id = 0x0, parse_attr = 0x0}crash> mlx5_eswitch_rep 0xffff880c823e7e48struct mlx5_eswitch_rep { load = 0xffffffffa01b6c00 <mlx5e_rep_register_vf_vports+32>, unload = 0xffffffffa01b61b0 <mlx5e_rep_neigh_cleanup+64>, vport = 0x1, hw_id = "$\212\a\210", <incomplete sequence \312>, netdev = 0xffff880c875e0000, vport_rx_rule = 0xffff880b0f828840, vport_sqs_list = { next = 0xffff880bb6294dc8, prev = 0xffff880bb6294dc8 }, vlan = 0x0, vlan_refcount = 0x2, valid = 0x1}crash> mlx5e_rep_priv ffff880c8173c000struct mlx5e_rep_priv { rep = 0xffff880c823e7e00, neigh_update = { neigh_ht = { tbl = 0xffff880c7b33f800, nelems = { counter = 0x1 }, key_len = 0x8, p = { nelem_hint = 0x0, key_len = 0x20, key_offset = 0x8, head_offset = 0x0, max_size = 0x0, min_size = 0x4, automatic_shrinking = 0x1, locks_mul = 0x20, nulls_base = 0x0, hashfn = 0xffffffff81374d80 <rhashtable_jhash2>, obj_hashfn = 0x0, obj_cmpfn = 0x0 }, max_elems = 0x80000000, rhlist = 0x0, run_work = { data = { counter = 0xfffffffe0 }, entry = { next = 0xffff880c8173c058, prev = 0xffff880c8173c058 }, func = 0xffffffff81375120 <rht_deferred_worker> }, mutex = { owner = { counter = 0x0 }, wait_lock = { { rlock = { raw_lock = { val = { counter = 0x0 } } } } }, osq = { tail = { counter = 0x0 } }, wait_list = { next = 0xffff880c8173c080, prev = 0xffff880c8173c080 } }, lock = { { rlock = { raw_lock = { val = { counter = 0x0 } } } } } }, neigh_list = { next = 0xffff880c09c713a8, prev = 0xffff880c09c713a8 }, encap_lock = { { rlock = { raw_lock = { val = { counter = 0x0 } } } } }, netevent_nb = { notifier_call = 0xffffffffa01b7180 <mlx5e_rep_neigh_entry_lookup+208>, next = 0xffff880c7a2beeb0, priority = 0x0 }, neigh_stats_work = { work = { data = { counter = 0xc01 }, entry = { next = 0xffff880c8173c0d0, prev = 0xffff880c8173c0d0 }, func = 0xffffffffa01b6130 <mlx5e_rep_get_stats+160> }, timer = { entry = { next = 0x0, pprev = 0xffff880c8ebd23b8 }, expires = 0x106443188, function = 0xffffffff8109d3c0 <delayed_work_timer_fn>, data = 0xffff880c8173c0c8, flags = 0x36600007 }, wq = 0xffff880c82b23400, cpu = 0x40 }, min_interval = 0x1388 }}crash> list 0xffff880c09c713a8ffff880c09c713a8ffff880c8173c098crash> list mlx5e_neigh_hash_entry.neigh_list -H ffff880c8173c098 -s mlx5e_neigh_hash_entryffff880c09c71380struct mlx5e_neigh_hash_entry { rhash_node = { next = 0x5b }, m_neigh = { dev = 0xffff880c6a720000, dst_ip = { v4 = 0x1301a8c0, v6 = { in6_u = { u6_addr8 = "\300\250\001\023\000\000\000\000\000\000\000\000\000\000\000", u6_addr16 = {0xa8c0, 0x1301, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, u6_addr32 = {0x1301a8c0, 0x0, 0x0, 0x0} } } }, family = 0x2 }, neigh_list = { next = 0xffff880c8173c098, prev = 0xffff880c8173c098 }, encap_list = { next = 0xffff880aa3d43000, prev = 0xffff880aa3d43000 }, n = 0xffff880b6bf93200, neigh_update_work = { data = { counter = 0xc00 }, entry = { next = 0xffff880c09c713d8, prev = 0xffff880c09c713d8 }, func = 0xffffffffa01b6d30 <mlx5e_vport_rep_load+96> }, refcnt = { refs = { counter = 0x1 } }, reported_lastuse = 0x10625ce00}crash> list -H ffff880c09c713b8 -s mlx5e_encap_entryffff880aa3d43000struct mlx5e_encap_entry { encap_list = { next = 0xffff880c09c713b8, prev = 0xffff880c09c713b8 }, m_neigh = { dev = 0xffff880c6a720000, dst_ip = { v4 = 0x1301a8c0, # 192.168.1.19 v6 = { in6_u = { u6_addr8 = "\300\250\001\023\000\000\000\000\000\000\000\000\000\000\000", u6_addr16 = {0xa8c0, 0x1301, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, u6_addr32 = {0x1301a8c0, 0x0, 0x0, 0x0} } } }, family = 0x2 }, encap_hlist = { next = 0x0, pprev = 0xffff88017e961850 }, flows = { next = 0xffff880aa0ac3f80, prev = 0xffff880bec287d40 }, encap_id = 0x0, tun_info = { key = { tun_id = 0x100000000000000, # vxlan key = 1 u = { ipv4 = { src = 0x0, dst = 0x1301a8c0 }, ipv6 = { src = { in6_u = { u6_addr8 = "\000\000\000\000\300\250\001\023\000\000\000\000\000\000\000", u6_addr16 = {0x0, 0x0, 0xa8c0, 0x1301, 0x0, 0x0, 0x0, 0x0}, u6_addr32 = {0x0, 0x1301a8c0, 0x0, 0x0} } }, dst = { in6_u = { u6_addr8 = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000", u6_addr16 = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}, u6_addr32 = {0x0, 0x0, 0x0, 0x0} } } } }, tun_flags = 0x400, tos = 0x0, ttl = 0x0, label = 0x0, tp_src = 0x0, tp_dst = 0xb512 }, dst_cache = { cache = 0x0, reset_ts = 0x0 }, options_len = 0x0, mode = 0x1 }, h_dest = "$\212\a\210'\233", out_dev = 0xffff880c6a720000, tunnel_type = 0x0, flags = 0x1, encap_header = 0xffff880b838a8b00 "$\212\a\210'\233$\212\a\210'\312\b", encap_size = 0x32}
阅读全文
0 0
- dump rhashtable and encap and decap flows
- OAuth2.0 Authorization flows and grant types
- OpenDaylight: Programming Flows with the REST Interface and cURL
- 嵌入式实验EX1:Kahn Process Networks and Synchronous Data Flows
- Memory dump and bug
- svnadmin dump and load
- dump rtable and dst_entry
- dump rtnl_msg_handlers and rtnl_link
- json.dump() and sorted() dict
- Dynamics AX 2009: Business Intelligence – How Data Flows into AX SSRS Reports and Excel
- Finding Bad Guys with 35 million Flows, 2 Analysts, 5 Minutes and 0 Dollars
- Anti-Anti-Dump and nonintrusive tracers
- how to dump undo header and block
- Android DalvikVM threads and ANR dump.
- Use Dump and Restore for Linux Backup
- hal testapp and file open and close, and ES and PES dump. HAL doc position. hal compile
- Use core dump and gdb to trace a segmentaion fault
- Websphere Application server Java core and heap dump
- 使用v$object_usage监控索引
- H5 31
- 万能的路由 在一个网站上看到的 实现局部加载
- MySql模糊查询like通配符使用详细介绍
- python -m SimpleHTTPServer
- dump rhashtable and encap and decap flows
- H5 32
- CDN
- Kotlin语法(七)
- h5 33
- (117)BitMask蓝图变量
- AOJ877(斐波那契模型)
- php判断请求类型(ajax|get|post|cli)
- 用vc2013编写的程序在新电脑上运行出现“0xc000007b”错误的解决办法