diff options
| author | tongzongzhen <[email protected]> | 2024-05-20 21:55:11 +0800 |
|---|---|---|
| committer | tongzongzhen <[email protected]> | 2024-05-20 21:55:11 +0800 |
| commit | 0d25f62d98aad377cd7c5becb3b38f319419f88b (patch) | |
| tree | 144cf0d8738ff86a0db9335ac16ed311c432cc80 /service/src | |
| parent | f7657b3f6561bbac7973e3f86c11d3f322f9c051 (diff) | |
mod measurement and fix arp errorv4.8.11-20240520
Diffstat (limited to 'service/src')
| -rw-r--r-- | service/src/dp_trace.c | 8 | ||||
| -rw-r--r-- | service/src/node_bridge.c | 10 |
2 files changed, 11 insertions, 7 deletions
diff --git a/service/src/dp_trace.c b/service/src/dp_trace.c index 30ebf61..2db3647 100644 --- a/service/src/dp_trace.c +++ b/service/src/dp_trace.c @@ -198,13 +198,13 @@ void hook_rte_pktmbuf_free(struct rte_mbuf * m) { struct dp_trace_record_meta meta = { .measurement_type = DP_TRACE_MEASUREMENT_TYPE_TELEMETRY, .appsym = MR_TRACE_APPSYM, .module = ""}; - dp_trace_record_emit_str(sc_main_get()->trace, m, rte_lcore_id(), &meta, "packet free."); + dp_trace_record_emit_str(sc_main_get()->trace, m, rte_lcore_id(), &meta, "packet dropped"); } if (unlikely(dp_trace_record_can_emit(m, DP_TRACE_MEASUREMENT_TYPE_TRACE))) { struct dp_trace_record_meta meta = { .measurement_type = DP_TRACE_MEASUREMENT_TYPE_TRACE, .appsym = MR_TRACE_APPSYM, .module = ""}; - dp_trace_record_emit_str(sc_main_get()->trace, m, rte_lcore_id(), &meta, "packet free."); + dp_trace_record_emit_str(sc_main_get()->trace, m, rte_lcore_id(), &meta, "packet dropped"); } dp_trace_record_write(trace, m, rte_lcore_id()); rte_pktmbuf_free(m); @@ -221,13 +221,13 @@ void hook_rte_pktmbuf_free_bulk(struct rte_mbuf ** mbufs, unsigned int count) { struct dp_trace_record_meta meta = { .measurement_type = DP_TRACE_MEASUREMENT_TYPE_TELEMETRY, .appsym = MR_TRACE_APPSYM, .module = ""}; - dp_trace_record_emit_str(sc_main_get()->trace, mbufs[idx], rte_lcore_id(), &meta, "packet free."); + dp_trace_record_emit_str(sc_main_get()->trace, mbufs[idx], rte_lcore_id(), &meta, "packet dropped"); } if (unlikely(dp_trace_record_can_emit(mbufs[idx], DP_TRACE_MEASUREMENT_TYPE_TRACE))) { struct dp_trace_record_meta meta = { .measurement_type = DP_TRACE_MEASUREMENT_TYPE_TRACE, .appsym = MR_TRACE_APPSYM, .module = ""}; - dp_trace_record_emit_str(sc_main_get()->trace, mbufs[idx], rte_lcore_id(), &meta, "packet free."); + dp_trace_record_emit_str(sc_main_get()->trace, mbufs[idx], rte_lcore_id(), &meta, "packet dropped"); } dp_trace_record_write(trace, mbufs[idx], rte_lcore_id()); } diff --git a/service/src/node_bridge.c b/service/src/node_bridge.c index 058270a..f4a2b4f 100644 --- a/service/src/node_bridge.c +++ b/service/src/node_bridge.c @@ -110,6 +110,8 @@ int parser_bridge_conf(struct sc_main * sc, struct node_bridge_main * bridge_mai rte_ether_addr_copy(&dev_desc->eth_addr, &bridge->ether_addr[i]); } + nr_bridge++; + /* Parser master devices */ char str_master_dev[MR_STRING_MAX] = {}; if (MESA_load_profile_string_nodef(sc->local_cfgfile, str_section, "master_device", str_master_dev, @@ -125,7 +127,6 @@ int parser_bridge_conf(struct sc_main * sc, struct node_bridge_main * bridge_mai } bridge->master_port = dev_desc->port_id; - nr_bridge++; } bridge_main->nr_bridge = nr_bridge; @@ -244,6 +245,7 @@ static __rte_always_inline void gen_store_trace_info_original(struct rte_node * } /* Generate and store the trace information for clone pkt */ +#if 0 static __rte_always_inline void gen_store_trace_info_copy(struct rte_node * node, struct rte_mbuf * mbuf, uint16_t next_node_index, uint8_t measurement_type) { @@ -251,14 +253,14 @@ static __rte_always_inline void gen_store_trace_info_copy(struct rte_node * node /* Populate the next node infomation */ char str_record[MR_STRING_MAX]; struct mrb_metadata * mrb_meta = mrbuf_cz_data(mbuf, MR_NODE_CTRLZONE_ID); - snprintf(str_record, sizeof(str_record), "created by copy. next node:%s, rsn:broadcast cloned packet, tx:%u", - node->nodes[next_node_index]->name, mrb_meta->port_egress); + snprintf(str_record, sizeof(str_record), "cloned packet, rsn: broadcast"); /* Emit the trace record */ struct dp_trace_record_meta meta = { .measurement_type = measurement_type, .appsym = MR_TRACE_APPSYM, .module = node->name}; dp_trace_record_emit_str(sc_main_get()->trace, mbuf, rte_lcore_id(), &meta, str_record); } +#endif static __rte_always_inline uint16_t bridge_node_process(struct rte_graph * graph, struct rte_node * node, void ** objs, uint16_t cnt) @@ -363,6 +365,7 @@ static __rte_always_inline uint16_t bridge_node_process(struct rte_graph * graph memset(mbuf_copy_mrb_meta, 0, sizeof(struct mrb_metadata)); mbuf_copy_mrb_meta->port_egress = egress_port; +#if 0 /* Mark packets for trace*/ dp_trace_filter_exec(sc_main_get()->trace, mbuf_copy, 0, rte_lcore_id()); @@ -376,6 +379,7 @@ static __rte_always_inline uint16_t bridge_node_process(struct rte_graph * graph { gen_store_trace_info_copy(node, mbuf_copy, BRIDGE_NEXT_ETH_EGRESS, DP_TRACE_MEASUREMENT_TYPE_TRACE); } +#endif /* Send clone pkt */ rte_node_enqueue(graph, node, BRIDGE_NEXT_ETH_EGRESS, (void **)&mbuf_copy, 1); |
