test(packet manager): re-schedule claimed packets

This commit is contained in:
luwenpeng
2024-09-18 14:23:01 +08:00
parent 721d5d1466
commit 22ba2e1d96
4 changed files with 224 additions and 80 deletions

View File

@@ -7,6 +7,8 @@ extern "C"
#include "stellar/packet_manager.h"
#define PACKET_QUEUE_MAX (PACKET_STAGE_MAX + 1)
struct packet_manager *packet_manager_new(struct mq_schema *mq_schema, const char *toml_file);
void packet_manager_free(struct packet_manager *pkt_mgr);
@@ -19,16 +21,20 @@ void packet_manager_runtime_dispatch(struct packet_manager_runtime *pkt_mgr_rt);
* for gtest
******************************************************************************/
#define QUEUE_NUM_MAX (PACKET_STAGE_MAX + 1) // the last queue is for egress
struct packet_manager_runtime_stat
{
uint64_t input_pkts;
uint64_t output_pkts;
uint64_t claim_pkts;
uint64_t schedule_pkts;
uint64_t queue_len[QUEUE_NUM_MAX];
struct
{
uint64_t pkts_input;
uint64_t pkts_output;
} total;
struct
{
uint64_t pkts_in; // include the packets that are scheduled
uint64_t pkts_out; // include the packets that are claimed
uint64_t pkts_claim;
uint64_t pkts_schedule;
} queue[PACKET_QUEUE_MAX]; // the last queue is for sending packets
};
const char *packet_stage_to_str(enum packet_stage stage);