From 04eca50f49f5549306d80f6b64b73ecb4ca2da1b Mon Sep 17 00:00:00 2001 From: Christopher Faulet Date: Mon, 8 Jan 2024 08:07:30 +0100 Subject: [PATCH] MINOR: applet: Add traces to debug receive/send and block/wake events New traces events are added to be able to debug receives and sends. --- src/applet.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/applet.c b/src/applet.c index 71e21c23d..6ecba835d 100644 --- a/src/applet.c +++ b/src/applet.c @@ -50,6 +50,14 @@ static const struct trace_event applet_trace_events[] = { { .mask = APPLET_EV_ERR, .name = "app_err", .desc = "error on appctx" }, #define APPLET_EV_START (1ULL << 5) { .mask = APPLET_EV_START, .name = "app_start", .desc = "start appctx" }, +#define APPLET_EV_RECV (1ULL << 6) + { .mask = APPLET_EV_START, .name = "app_receive", .desc = "RX on appctx" }, +#define APPLET_EV_SEND (1ULL << 7) + { .mask = APPLET_EV_START, .name = "app_send", .desc = "TX on appctx" }, +#define APPLET_EV_BLK (1ULL << 8) + { .mask = APPLET_EV_START, .name = "app_blk", .desc = "appctx blocked" }, +#define APPLET_EV_WAKE (1ULL << 9) + { .mask = APPLET_EV_START, .name = "app_wake", .desc = "appctx woken up" }, {} }; @@ -384,12 +392,14 @@ int appctx_buf_available(void *arg) if ((appctx->state & APPLET_INBLK_ALLOC) && b_alloc(&appctx->inbuf)) { appctx->state &= ~APPLET_INBLK_ALLOC; + TRACE_STATE("unblocking appctx, inbuf allocated", APPLET_EV_RECV|APPLET_EV_BLK|APPLET_EV_WAKE, appctx); task_wakeup(appctx->t, TASK_WOKEN_RES); return 1; } if ((appctx->state & APPLET_OUTBLK_ALLOC) && b_alloc(&appctx->outbuf)) { appctx->state &= ~APPLET_OUTBLK_ALLOC; + TRACE_STATE("unblocking appctx, outbuf allocated", APPLET_EV_SEND|APPLET_EV_BLK|APPLET_EV_WAKE, appctx); task_wakeup(appctx->t, TASK_WOKEN_RES); return 1; }