Skip to content

i#7470: Fix order of unreading split trace entries#7469

Merged
abhinav92003 merged 8 commits intomasterfrom
iX-unread-split
Apr 29, 2025
Merged

i#7470: Fix order of unreading split trace entries#7469
abhinav92003 merged 8 commits intomasterfrom
iX-unread-split

Conversation

@abhinav92003
Copy link
Copy Markdown
Contributor

@abhinav92003 abhinav92003 commented Apr 28, 2025

Fixes the order in which split trace entries such as TRACE_MARKER_TYPE_SPLIT_VALUE are unread in unread_last_entry. TRACE_MARKER_TYPE_SPLIT_VALUE must be at the front of the pre_read deque so that it is returned before the actual marker, in the same order it is read from the raw trace.

Adds a raw2trace_unit_test that fails with "SPLIT_VALUE marker is not adjacent to 2nd entry" due to the previously incorrect order of the split_value marker wrt the actual marker in the deque. The error was demonstrated using a large enough kernel_event marker value. This was not seen on a real trace probably because kernel_event marker values do not need the additional marker usually.

There is an additional bug where raw2trace does not fully take into account the fact that some markers may be preceded by the TRACE_MARKER_TYPE_SPLIT_VALUE marker. Added a TODO for now.

Issue: #7470

Fixes the order in which split trace entries such as TRACE_MARKER_TYPE_SPLIT_VALUE are unread in unread_last_entry. TRACE_MARKER_TYPE_SPLIT_VALUE must be at the front of the pre_read so that it is returned _before_ the actual marker, in the same order it is read from the raw trace.
Comment thread clients/drcachesim/tracer/raw2trace.cpp
@abhinav92003 abhinav92003 changed the title Fix order of unreading split trace entries i#7470: Fix order of unreading split trace entries Apr 28, 2025
Comment thread clients/drcachesim/tests/raw2trace_unit_tests.cpp Outdated
@abhinav92003 abhinav92003 merged commit 36a47e2 into master Apr 29, 2025
24 checks passed
@abhinav92003 abhinav92003 deleted the iX-unread-split branch April 29, 2025 03:07
derekbruening pushed a commit that referenced this pull request May 13, 2025
Fixes the order in which split trace entries such as
TRACE_MARKER_TYPE_SPLIT_VALUE are unread in unread_last_entry.
TRACE_MARKER_TYPE_SPLIT_VALUE must be at the front of the pre_read deque
so that it is returned _before_ the actual marker, in the same order it
is read from the raw trace.

Adds a raw2trace_unit_test that fails with "SPLIT_VALUE marker is not
adjacent to 2nd entry" due to the previously incorrect order of the
split_value marker wrt the actual marker in the deque. The error was
demonstrated using a large enough kernel_event marker value. This was
not seen on a real trace probably because kernel_event marker values do
not need the additional marker usually.

There is an additional bug where raw2trace does not fully take into
account the fact that some markers may be preceded by the
TRACE_MARKER_TYPE_SPLIT_VALUE marker. Added a TODO for now.

Issue: #7470
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants