diff --git a/en-US/kernel/build-custom-kernel.adoc b/en-US/kernel/build-custom-kernel.adoc index cd9ef31..075f4d8 100644 --- a/en-US/kernel/build-custom-kernel.adoc +++ b/en-US/kernel/build-custom-kernel.adoc @@ -37,6 +37,13 @@ cd kernel sudo dnf builddep kernel.spec ---- +If you want to use `make xconfig`, you'll need some additional packages: + +[source,bash] +---- +sudo dnf install qt3-devel libXi-devel gcc-c++ +---- + Make sure you add the user doing the build to `/etc/pesign/users` and run the authorize user script: @@ -205,13 +212,13 @@ look at the `Configuration targets` for the full list, but `make menuconfig` is a good place to start. You can also just edit the `.config` file directly. [NOTE] -==== -If you plan to run `make xconfig`: -[source,bash] ----- -sudo dnf install qt3-devel libXi-devel gcc-c++ ----- +==== + +One configuration option you may want to set is CONFIG_MODULE_COMPRESS, which +compresses the modules (with gzip by default) when installing them. Without +this setting, the modules can be very large. + ==== === Building the kernel diff --git a/en-US/kernel/troubleshooting.adoc b/en-US/kernel/troubleshooting.adoc index 680eff7..5980a58 100644 --- a/en-US/kernel/troubleshooting.adoc +++ b/en-US/kernel/troubleshooting.adoc @@ -22,8 +22,8 @@ boot process, there may or may not be any output. Some good first steps are: * Add `initcall_debug` parameter, which traces the initcalls as they are executed. -* If you get no output at all from the kernel, sometimes booting with - `earlyprintk=vga` can sometimes yield something of interest. +* If you get no output at all from the kernel, booting with `earlyprintk=vga` + can sometimes yield something of interest. == Hangs and freezes @@ -68,7 +68,7 @@ version. The first version you find that doesn't work will be the initial "bad" version. . Install the <> -required to build the kernel +required to build the kernel. . Next, <>. @@ -78,7 +78,13 @@ 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 `. +. Start a new `git-bisect` with `git bisect start`. + +. Mark the newest version that works as "good" with `git bisect good `. +For example: `git bisect good v4.16.8`. + +. Mark the first version that does not work as "bad" with `git bisect bad +`. For example: `git bisect bad v4.17`. . <>. Sometimes commits cannot be built. If this happens, skip the commit with `git bisect @@ -86,12 +92,10 @@ skip`. . <>. -. Reboot into the new kernel and test to see if the it works. +. 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`. -. Check out the next commit to test by running `git bisect next`. - . Repeat the previous five steps until you've found the commit that introduced the problem.