From 66ff4085a861026bc94dc4a1a971e09004bdee84 Mon Sep 17 00:00:00 2001 From: Philippe Proulx Date: Fri, 15 Feb 2019 15:14:15 -0500 Subject: [PATCH] src.text.dmesg: emit stream activity beginning/end messages Signed-off-by: Philippe Proulx --- plugins/text/dmesg/dmesg.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/plugins/text/dmesg/dmesg.c b/plugins/text/dmesg/dmesg.c index c70fd1eb..697d1965 100644 --- a/plugins/text/dmesg/dmesg.c +++ b/plugins/text/dmesg/dmesg.c @@ -53,9 +53,11 @@ struct dmesg_msg_iter { enum { STATE_EMIT_STREAM_BEGINNING, + STATE_EMIT_STREAM_ACTIVITY_BEGINNING, STATE_EMIT_PACKET_BEGINNING, STATE_EMIT_EVENT, STATE_EMIT_PACKET_END, + STATE_EMIT_STREAM_ACTIVITY_END, STATE_EMIT_STREAM_END, STATE_DONE, } state; @@ -711,6 +713,7 @@ bt_self_message_iterator_status dmesg_msg_iter_next_one( if (dmesg_msg_iter->tmp_event_msg || dmesg_msg_iter->state == STATE_EMIT_PACKET_END || + dmesg_msg_iter->state == STATE_EMIT_STREAM_ACTIVITY_END || dmesg_msg_iter->state == STATE_EMIT_STREAM_END) { goto handle_state; } @@ -775,6 +778,12 @@ handle_state: BT_ASSERT(dmesg_msg_iter->tmp_event_msg); *msg = bt_message_stream_beginning_create( dmesg_msg_iter->pc_msg_iter, dmesg_comp->stream); + dmesg_msg_iter->state = STATE_EMIT_STREAM_ACTIVITY_BEGINNING; + break; + case STATE_EMIT_STREAM_ACTIVITY_BEGINNING: + BT_ASSERT(dmesg_msg_iter->tmp_event_msg); + *msg = bt_message_stream_activity_beginning_create( + dmesg_msg_iter->pc_msg_iter, dmesg_comp->stream); dmesg_msg_iter->state = STATE_EMIT_PACKET_BEGINNING; break; case STATE_EMIT_PACKET_BEGINNING: @@ -791,6 +800,11 @@ handle_state: case STATE_EMIT_PACKET_END: *msg = bt_message_packet_end_create( dmesg_msg_iter->pc_msg_iter, dmesg_comp->packet); + dmesg_msg_iter->state = STATE_EMIT_STREAM_ACTIVITY_END; + break; + case STATE_EMIT_STREAM_ACTIVITY_END: + *msg = bt_message_stream_activity_end_create( + dmesg_msg_iter->pc_msg_iter, dmesg_comp->stream); dmesg_msg_iter->state = STATE_EMIT_STREAM_END; break; case STATE_EMIT_STREAM_END: -- 2.34.1