Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

You cannot make kernel developers fix a particular bug, but you can give them a much better chance of investigating it: reproduce it, identify the affected subsystem, test a suitable upstream kernel when feasible, and send a precise report to the channel that subsystem documents. The Linux kernel’s official issue-reporting guide and patch-submission guide explain the process.

How do I report a Linux kernel bug?

Start by working out whether the problem is in the kernel and which subsystem is involved. Then check the relevant MAINTAINERS entry for reporting instructions and recipients. Kernel issues are commonly handled by maintainers and subsystem mailing lists; there is no single generic bug-tracker route that fits every report.

  1. Search before sending. Look through the archives for the relevant list or subsystem. If an existing discussion describes the same problem, join that thread rather than creating a duplicate.
  2. Check the appropriate kernel. When practical, test a current upstream kernel as the reporting guide recommends. Some situations allow testing the latest stable kernel instead. Prefer a vanilla kernel and a healthy, untainted environment when feasible, and record exactly what you tested.
  3. Send the report where the subsystem directs. Follow the live MAINTAINERS guidance and any subsystem-specific instructions. Include the relevant maintainer and list contacts.
  4. Respond to follow-up. Developers may need more logs, a narrower reproduction, or tests against a newer version or proposed fix. Retesting and reporting the result helps move investigation forward.

If the issue first appeared with a distribution kernel, test an appropriate upstream kernel before describing it as an upstream regression when feasible. Distribution patches and configuration differences can affect the result. The official reporting guide covers routing, testing, and report contents.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What information should I include in a kernel bug report?

Make the report useful to someone who cannot see your machine. Describe the user-visible impact and provide enough detail for another person to try to reproduce it. Keep unrelated problems in separate reports.

  • Subject: name the subsystem or symptom. Mark a regression clearly with [REGRESSION].
  • Impact: state what fails—such as a crash, hang, data corruption, build failure, or performance change—and what you expected to happen.
  • Environment: give the exact kernel version or commit, distribution and build details, relevant hardware, configuration context, and recent changes that might matter.
  • Reproduction: list the smallest reliable steps, along with the expected and actual results.
  • Evidence: include relevant logs, traces, or crash details. Remove sensitive information where needed.
  • Routing: note the relevant subsystem and follow its MAINTAINERS instructions; search its archives and copy the appropriate contacts.

There is no single report format guaranteed to suit every subsystem, so treat these as practical essentials and follow any additional instructions for the destination you identify. The official reporting guide provides the project’s current guidance.

Where do I report a Linux kernel regression?

A regression is a behavior that used to work and now fails or has become worse. Report the version boundary, not just the version where you noticed the problem: identify the last version that worked and the first one that failed, using appropriately configured kernels where possible.

Situation Route What to include
Possible regression in a supported stable or long-term series Check the relevant stable-series archives and follow the reporting guide’s direction to the stable and regressions lists. Last known working and first known failing versions, plus subsystem contacts when relevant.
Other suspected kernel issue Find the subsystem in MAINTAINERS, search its archives, and report to its maintainers and list as instructed. Exact environment, reproducible steps, impact, and useful logs or crash details.
Potentially exploitable security issue Use the kernel security-reporting procedure rather than a public report. Exact affected version range and the information requested by the security process.

These routes differ because stable regressions, ordinary subsystem problems, and security issues have distinct handling. For a suspected security issue, follow the kernel security-bug guidance; public disclosure can create risk.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How do I bisect a Linux kernel regression?

If you can reproduce the regression reliably, git bisect can help narrow down which change introduced it. A successful bisection gives maintainers a concrete lead, but it may require building and testing multiple kernel images. It is helpful when practical, not a prerequisite for sending an initial report.

  1. Record a kernel version or commit where the behavior works and one where it fails.
  2. Make sure the compared kernels are configured appropriately and that the test reliably distinguishes working from failing behavior.
  3. Use Git’s bisection process to test intermediate commits, marking each result as good or bad until the range is narrowed.
  4. Include the resulting culprit commit, or the remaining narrowed range if you cannot complete the process, in your report.

If a commit is identified, its sign-off chain may help determine who should receive the report. Explain your test method and results so maintainers can assess whether the candidate is credible. See the issue-reporting guide for regression-specific guidance.

What if I have a patch to fix the bug?

A patch should address one logical problem and explain why the change is needed, what users experience, and how the proposed fix addresses it. The kernel’s patch guide puts the principle plainly: “Whether your patch is a one-line bug fix or 5000 lines of a new feature, there must be an underlying problem that motivated you to do this work.” This is wording from The Linux Kernel documentation, “Submitting patches: the essential guide to getting your code into the kernel”.

  • Consult the subsystem’s instructions and send the patch to the relevant maintainers and mailing lists.
  • Keep each patch focused on one logical change, with a clear rationale and user-visible impact.
  • Use a Fixes: tag when identifying the commit that introduced the bug, and a Closes: reference to a public report where appropriate.
  • Do not assume a Fixes: tag automatically qualifies a patch for stable kernels; stable selection has separate eligibility and submission rules.

The patch-submission guide explains recipient selection and patch conventions. The separate stable-kernel rules describe the criteria for stable fixes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

What to expect after sending a report

A precise report makes investigation easier, but it does not guarantee a response time, acceptance, or a fix. Keep the discussion focused, answer questions, and share requested retests or additional evidence. For security reports, use the designated process and provide an exact version or commit rather than a vague label such as “latest,” as the security guidance requires.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.