perf: 将marsio_send_burst_with_options替换成marsio_send_burst和marsio_buff_set_metadata(MR_BUFF_REHASH_INDEX)以降低CPU

This commit is contained in:
luwenpeng
2023-11-21 19:08:30 +08:00
parent 332fe52650
commit c3bd2fb939
4 changed files with 25 additions and 11 deletions

View File

@@ -55,6 +55,7 @@ struct mrb_metadata
uint16_t link_db_index;
uint16_t user_data_0;
uint32_t hash_usr;
};
struct mock_marsio_buff_t
@@ -154,6 +155,9 @@ int marsio_buff_set_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type,
switch (type)
{
case MR_BUFF_REHASH_INDEX:
mrb_metadata->hash_usr = *(uint32_t *)data;
return 0;
case MR_BUFF_ROUTE_CTX:
route_ctx = (struct mrb_metadata_route_ctx *)data;
assert(route_ctx != NULL);
@@ -189,6 +193,13 @@ int marsio_buff_get_metadata(marsio_buff_t *m, enum mr_buff_metadata_type type,
switch (type)
{
case MR_BUFF_REHASH_INDEX:
if (sz_data < sizeof(uint32_t))
{
return -1;
}
*(uint32_t *)(data) = mrb_metadata->hash_usr;
return sizeof(uint32_t);
case MR_BUFF_ROUTE_CTX:
if (sz_data < sizeof(struct mrb_metadata_route_ctx))
{