|
Find the newest version you can that works. This will be the initial "good" version. The first version you find that doesn't work will be the initial "bad" version.
|
|
|
Prepare a `.config` file. Assuming you've got both the good and bad kernel installed, the config for both will be in `/boot/`.footnote:[When bisecting between major versions (e.g. `v4.16` and `v4.15`) new configuration options will be added and removed as you bisect. It's _usually_ safe to select the default.]
|
|
|
Start a new `git-bisect` with `git bisect start`.
|
|
|
Mark the newest version that works as "good" with `git bisect good <tag>`. For example: `git bisect good v4.16.8`.
|
|
|
Mark the first version that does not work as "bad" with `git bisect bad <tag>`. For example: `git bisect bad v4.17`.
|
|
|
Reboot into the new kernel and test to see if it works.
|
|
|
If the new kernel works, mark it as good with `git bisect good`. Otherwise, mark it as bad with `git bisect bad`.
|
|
|
Repeat the previous five steps until you've found the commit that introduced the problem.
|
|
|
Information for collecting logs is documented at the https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html[libinput website].
|
|
|
Install the xref:kernel/build-custom-kernel.adoc#_get_the_dependencies[dependencies] required to build the kernel.
|
|
|
Next, xref:kernel/build-custom-kernel.adoc#_getting_the_sources[get the source code].
|
|
|
xref:kernel/build-custom-kernel.adoc#_building_the_kernel[Build the kernel]. Sometimes commits cannot be built. If this happens, skip the commit with `git bisect skip`.
|
|
|
xref:kernel/build-custom-kernel.adoc#_installing_the_kernel[Install the kernel].
|
|