Skip to content

Conversation

@tarasmadan
Copy link
Collaborator

@tarasmadan tarasmadan commented Sep 24, 2025

Syzkaller is currently able to parse sequential reports from the kernel log and accumulate the statistics per report. You can see these reports in syzkaller only (not syzbot dashboard).
The problems:

  1. These reports may be interleaving if are coming from the parallel contexts (threads)
  2. Getting reports from one thread instead of all threads will hopefully give a higher signal/noise ratio.

This PR improves sequential reports parsing and is not expected to affect "first report" extraction.
Eventually the plan is to disable panic_on_warn and start getting sequential reports.

TODO:

  1. Consider using MAX_REPORT_LINES.
  2. Consider skipping next report if previous report truncated to the next one becomes invalid.
  3. Comment code?

@tarasmadan tarasmadan marked this pull request as ready for review September 24, 2025 09:36
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch from d565a9a to 1e097c2 Compare September 24, 2025 11:58
Copy link
Member

@ramosian-glider ramosian-glider left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this code should also handle reports from the CPU context.

@a-nogikh
Copy link
Collaborator

Please extend the commit/PR description, I have only read what you provided here (I have no other context) and thus I struggle to understand the problem it's supposed to solve.

@tarasmadan tarasmadan marked this pull request as draft September 25, 2025 09:51
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 8 times, most recently from 003ba11 to 712a9bf Compare September 25, 2025 13:58
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 2 times, most recently from c3fce1f to 5df187e Compare October 24, 2025 15:58
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch from 5df187e to 3b478c9 Compare January 5, 2026 17:47
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 2 times, most recently from 11e39ad to d7e78a4 Compare January 9, 2026 14:34
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 5 times, most recently from a4381d4 to 6d9f46d Compare January 9, 2026 15:08
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 4 times, most recently from 9d4acf4 to f087984 Compare January 12, 2026 10:19
@tarasmadan tarasmadan marked this pull request as ready for review January 12, 2026 10:19
@tarasmadan tarasmadan requested a review from avagin as a code owner January 12, 2026 10:19
@tarasmadan tarasmadan requested review from a-nogikh and dvyukov and removed request for avagin January 12, 2026 10:19
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch from f087984 to b3205a4 Compare January 12, 2026 10:31
Copy link
Collaborator

@dvyukov dvyukov left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please check other test changes for sanity.

path_openat+0x3603/0x64c0
=====================================================
TAIL REPORTS:
prepare_task_switch+0x284/0xd00
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks wrong.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Title line is "Kernel panic - not syncing: panic_on_kmsan set ..."
Because it is a report with Thread IDs, we save up to 50 prefix lines.
The parsing was started after the "BUG: KMSAN: uninit-value in prepare_task_switch+0x284/0xd00" thus all the lines (~18) were included.

We can alternatively remove all the prefix lines for the tail reports.

Kernel Offset: disabled
Rebooting in 86400 seconds..
TAIL REPORTS:
Kernel panic - not syncing: panic_on_warn set ...
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This may be annoying. We have panic_on_warn report in most bugs. I think we need to exclude them.

Copy link
Collaborator Author

@tarasmadan tarasmadan Jan 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We plan to disable panic_on_warn eventually. To "do nothing" will also work.

The alternatives are:

  1. Do nothing.
  2. If the very next report line is another title - skip it.
  3. Ignore "panic_on_warn" reports.

@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch 2 times, most recently from e699e8a to 239445b Compare January 12, 2026 15:04
Syzkaller is currently able to parse sequential reports from the kernel log and accumulate the statistics per report.
You can see these reports in syzkaller only (not syzbot dashboard).
The problems:
1. These reports may be interleaving if are coming from the parallel contexts (threads)
2. Getting reports from one thread instead of all threads will hopefully give a higher signal/noise ratio.

This PR improves sequential reports parsing and is not expected to affect "first report" extraction.
And regenerate test with tail reports and ContextIDs.
@tarasmadan tarasmadan force-pushed the get-only-the-thread-reports branch from 239445b to a0c4fe5 Compare January 22, 2026 02:07
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.

4 participants