summaryrefslogtreecommitdiff
path: root/shaping/src/shaper_session.cpp
diff options
context:
space:
mode:
authorroot <[email protected]>2024-01-22 08:08:30 +0000
committerroot <[email protected]>2024-01-22 08:08:30 +0000
commit4bc81cc24f2989b84670c54252585c5403acbc01 (patch)
treef975da4d76e1ecbaa1415c21a7d348b89600658b /shaping/src/shaper_session.cpp
parentf0c91c0cfd4ec5a8f3e6636605484f1467c40a1f (diff)
add aqm blue algorithm temp code, and some performance optimize
Diffstat (limited to 'shaping/src/shaper_session.cpp')
-rw-r--r--shaping/src/shaper_session.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/shaping/src/shaper_session.cpp b/shaping/src/shaper_session.cpp
index 4a42391..4384a06 100644
--- a/shaping/src/shaper_session.cpp
+++ b/shaping/src/shaper_session.cpp
@@ -122,11 +122,16 @@ static void shaper_session_log_send(struct shaping_thread_ctx *ctx, struct shapi
int pkt_header_len = sf->ctrl_meta.l7_offset;
struct metadata *ctrl_meta = &sf->ctrl_meta;
struct sids sids;
+ char *dst = NULL;
char *addr_str = addr_tuple4_to_str(&sf->tuple4);
- marsio_buff_malloc_global(ctx->marsio_info->instance, &tx_buff, 1, 0, ctx->thread_index);
+ if (marsio_buff_malloc_global(ctx->marsio_info->instance, &tx_buff, 1, 0, ctx->thread_index) < 0) {
+ LOG_ERROR("%s: marsio_buff_malloc_global failed for session %s", LOG_TAG_SHAPING, addr_str);
+ goto END;
+ }
+
marsio_buff_set_ctrlbuf(tx_buff);
- char *dst = marsio_buff_append(tx_buff, pkt_header_len + mpack_size);
+ dst = marsio_buff_append(tx_buff, pkt_header_len + mpack_size);
memcpy(dst, pkt_header_data, pkt_header_len);
memcpy(dst + pkt_header_len, mpack_data, mpack_size);