From: Philippe Proulx Date: Fri, 15 Feb 2019 20:14:15 +0000 (-0500) Subject: src.text.dmesg: emit stream activity beginning/end messages X-Git-Tag: v2.0.0-pre5~179 X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=commitdiff_plain;h=66ff4085a861026bc94dc4a1a971e09004bdee84 src.text.dmesg: emit stream activity beginning/end messages Signed-off-by: Philippe Proulx --- 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: