![Sarah Sharp](/assets/img/avatar_default.png)
One of the most common frustrations maintainers have with bug reporters is the email that starts with "I have a two year old kernel from an embedded vendor with some random drivers and fixes thrown in, and it's crashing". Be specific about what kernel versions the upstream maintainers will fix bugs in, and direct bug reporters to their Linux distribution or embedded vendor if the bug is in an unsupported kernel. Suggest that bug reporters should reproduce their bugs on the latest -rc kernel. Signed-off-by: Sarah Sharp <sarah.a.sharp@linux.intel.com>
121 lines
5 KiB
Plaintext
121 lines
5 KiB
Plaintext
Background
|
|
==========
|
|
|
|
The upstream Linux kernel maintainers only fix bugs for specific kernel
|
|
versions. Those versions include the current "release candidate" (or -rc)
|
|
kernel, any "stable" kernel versions, and any "long term" kernels.
|
|
|
|
Please see https://www.kernel.org/ for a list of supported kernels. Any
|
|
kernel marked with [EOL] is "end of life" and will not have any fixes
|
|
backported to it.
|
|
|
|
If you've found a bug on a kernel version isn't listed on kernel.org,
|
|
contact your Linux distribution or embedded vendor for support.
|
|
Alternatively, you can attempt to run one of the supported stable or -rc
|
|
kernels, and see if you can reproduce the bug on that. It's preferable
|
|
to reproduce the bug on the latest -rc kernel.
|
|
|
|
|
|
How to report Linux kernel bugs
|
|
===============================
|
|
|
|
|
|
Identify the problematic subsystem
|
|
----------------------------------
|
|
|
|
Identifying which part of the Linux kernel might be causing your issue
|
|
increases your chances of getting your bug fixed. Simply posting to the
|
|
generic linux-kernel mailing list (LKML) may cause your bug report to be
|
|
lost in the noise of a mailing list that gets 1000+ emails a day.
|
|
|
|
Instead, try to figure out which kernel subsystem is causing the issue,
|
|
and email that subsystem's maintainer and mailing list. If the subsystem
|
|
maintainer doesn't answer, then expand your scope to mailing lists like
|
|
LKML.
|
|
|
|
|
|
Identify who to notify
|
|
----------------------
|
|
|
|
Once you know the subsystem that is causing the issue, you should send a
|
|
bug report. Some maintainers prefer bugs to be reported via bugzilla
|
|
(https://bugzilla.kernel.org), while others prefer that bugs be reported
|
|
via the subsystem mailing list.
|
|
|
|
To find out where to send an emailed bug report, find your subsystem or
|
|
device driver in the MAINTAINERS file. Search in the file for relevant
|
|
entries, and send your bug report to the person(s) listed in the "M:"
|
|
lines, making sure to Cc the mailing list(s) in the "L:" lines. When the
|
|
maintainer replies to you, make sure to 'Reply-all' in order to keep the
|
|
public mailing list(s) in the email thread.
|
|
|
|
If you know which driver is causing issues, you can pass one of the driver
|
|
files to the get_maintainer.pl script:
|
|
perl scripts/get_maintainer.pl -f <filename>
|
|
|
|
If it is a security bug, please copy the Security Contact listed in the
|
|
MAINTAINERS file. They can help coordinate bugfix and disclosure. See
|
|
Documentation/SecurityBugs for more information.
|
|
|
|
If you can't figure out which subsystem caused the issue, you should file
|
|
a bug in kernel.org bugzilla and send email to
|
|
linux-kernel@vger.kernel.org, referencing the bugzilla URL. (For more
|
|
information on the linux-kernel mailing list see
|
|
http://www.tux.org/lkml/).
|
|
|
|
|
|
[Some of this is taken from Frohwalt Egerer's original linux-kernel FAQ]
|
|
|
|
Gather information
|
|
------------------
|
|
|
|
The most important information in a bug report is how to reproduce the
|
|
bug. This includes system information, and (most importantly)
|
|
step-by-step instructions for how a user can trigger the bug.
|
|
|
|
If the failure includes an "OOPS:", take a picture of the screen, capture
|
|
a netconsole trace, or type the message from your screen into the bug
|
|
report. Please read "Documentation/oops-tracing.txt" before posting your
|
|
bug report. This explains what you should do with the "Oops" information
|
|
to make it useful to the recipient.
|
|
|
|
This is a suggested format for a bug report sent via email or bugzilla.
|
|
Having a standardized bug report form makes it easier for you not to
|
|
overlook things, and easier for the developers to find the pieces of
|
|
information they're really interested in. If some information is not
|
|
relevant to your bug, feel free to exclude it.
|
|
|
|
First run the ver_linux script included as scripts/ver_linux, which
|
|
reports the version of some important subsystems. Run this script with
|
|
the command "sh scripts/ver_linux".
|
|
|
|
Use that information to fill in all fields of the bug report form, and
|
|
post it to the mailing list with a subject of "PROBLEM: <one line
|
|
summary from [1.]>" for easy identification by the developers.
|
|
|
|
[1.] One line summary of the problem:
|
|
[2.] Full description of the problem/report:
|
|
[3.] Keywords (i.e., modules, networking, kernel):
|
|
[4.] Kernel information
|
|
[4.1.] Kernel version (from /proc/version):
|
|
[4.2.] Kernel .config file:
|
|
[5.] Most recent kernel version which did not have the bug:
|
|
[6.] Output of Oops.. message (if applicable) with symbolic information
|
|
resolved (see Documentation/oops-tracing.txt)
|
|
[7.] A small shell script or example program which triggers the
|
|
problem (if possible)
|
|
[8.] Environment
|
|
[8.1.] Software (add the output of the ver_linux script here)
|
|
[8.2.] Processor information (from /proc/cpuinfo):
|
|
[8.3.] Module information (from /proc/modules):
|
|
[8.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem)
|
|
[8.5.] PCI information ('lspci -vvv' as root)
|
|
[8.6.] SCSI information (from /proc/scsi/scsi)
|
|
[8.7.] Other information that might be relevant to the problem
|
|
(please look in /proc and include all information that you
|
|
think to be relevant):
|
|
[X.] Other notes, patches, fixes, workarounds:
|
|
|
|
|
|
Thank you
|