This change updates the build script to use the annotations script from
Ubuntu to generate the kernel configuration. Previously, we used the
pre-generated configuration files available in the mainline crack
builds. However, the team has stopped generating these in favor of the
annotations script.
This change updates the build script to use olddefconfig to use the old
.config file in the directory and use default values for unspecified
configuration options.
Fixes#335
This change updates the kernel patches with the patches used by Proxmox.
Furthermore, we split the patches from Proxmox and Ubuntu, so that we
don't have to re-order them.
This change fixes the AppArmor incompatibility issues with the stock
Proxmox kernel. Since the stock kernel includes some patches from
Ubuntu, its AppArmor feature set is incompatible with the one offered by
this project.
We address this by also including these patches in our build, so users
do not need to manually intervene to update the apparmor_parser
configuration.
This change reduces the length of the kernel version that is set by the
build process. We find that the most recent version is too long for the
kernel and causes certain kernel detection processes to fail.
We also remove the concept of build flavor or build profile. These
concepts should be reflected in the Debian package name and version
instead of separately in the kernel version.
This change updates the build script to include objtool in the header
package, which is necessary when building some out-of-tree modules (such as
the NVIDIA driver)
The upstream Ubuntu kernel enables UBSAN on 5.14+ and 5.13.14+ builds, leading
to boot issues on servers depending on the hardware or module configuration.
With hundreds of different kernel modules and thousands different
configuration, this change in its current stage is high risk and questionable
in general.
These issues are impossible to predict and hard to troubleshoot.
Therefore, I believe it is worth disabling for now.
Resolves#164 and #200
This change adds a release for Linux 5.15 for the Proxmox Edge kernels.
In addition, this change also includes ZFS 2.1.1 which follows the
upstream Proxmox repository.
This change removes the kernel release from the full kernel version.
This is used by Proxmox to identify differences in the kernel ABI.
However, since this project does not track these changes, we remove the
kernel release number altogether.
This change updates the Debian build rules to build the Linux perf tools
using Python 3 as opposed to Python 2.7 that is currently specified in
the rules. Python 2.7 was already dropped from the build requirements,
but this line was not updated in the process.
This change adds the documentation scripts located in Documentation of
the Linux source root to the header package, as they are necessary for
some modules to build.
This change updates the build code to support in-tree builds. This is
easier to manage for CI builds and reduces the amount of IO operations
necessary for the build process.
This change simplifies the process for packaging the Linux headers.
Instead of copying the Linux tree and building the headers separately,
this change just installs the headers during the install process only.
This change updates the build process to directly build the kernel from
upstream sources, as opposed to requiring the Proxmox zfsonlinux
repository to build the patched sources.
This change renames the package again to pve-kernel. Instead, we now
differentiate the package based on the extra version (which is suffixed
with -edge).