Commit graph

218 commits

Author SHA1 Message Date
Fabian Mastenbroek
1318ae761c
Add Linux 6.1
This change adds support for building a Linux 6.1 Proxmox Edge kernel.

I have decided not to create releases for this major version since Proxmox
has already released an official supported pve-kernel-6.1.
See https://forum.proxmox.com/threads/opt-in-linux-6-1-kernel-for-proxmox-ve-7-x-available.119483
for more information.
2022-12-17 16:57:05 +00:00
Fabian Mastenbroek
97aa3e3f5b
Use annotations for generating Ubuntu config
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.
2022-12-17 16:54:30 +00:00
Fabian Mastenbroek
0a29a29503
Add build dependency on python3-dev
This change adds a build dependency on python3-dev in the Debian control
file. This dependency is necessary for building perf.

Fixes #334
2022-11-03 22:47:04 +01:00
Fabian Mastenbroek
a3db7c8863
Use olddefconfig for configuring kernel
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
2022-11-03 22:46:50 +01:00
Fabian Mastenbroek
e56e969874
Update default configuration
This change updates the default kernel configuration to use the same
config as used by the stock Proxmox kernel.
2022-11-03 22:41:51 +01:00
Fabian Mastenbroek
817a5e8d6b
Update to ZFS 2.1.6 2022-10-27 10:50:18 +02:00
Fabian Mastenbroek
ba318f6e4e
Add Linux 6.0
This change adds a release for Linux 6.0 for the Proxmox Edge kernels.
2022-10-27 10:50:18 +02:00
Fabian Mastenbroek
3c771c6126
Synchronize kernel patches with upstream
This change updates the kernel patches with the patches used by Proxmox.
2022-08-17 14:49:00 +02:00
Fabian Mastenbroek
458f87fda1
Add Linux 5.19 (#299)
This change adds a release for Linux 5.19 for the Proxmox Edge kernels.
2022-08-03 16:49:34 +02:00
Fabian Mastenbroek
60595234df
Add Linux 5.18 (#276)
This change adds a release for Linux 5.18 for the Proxmox Edge kernels.
2022-06-23 10:42:06 +02:00
Fabian Mastenbroek
71705da5a6
Update to ZFS 2.1.4 (#262)
This change updates the ZFS project to version 2.1.4, following some
critical issues with 2.1.3.
See https://github.com/fabianishere/pve-edge-kernel/issues/261 for more
information regarding this problem.
2022-03-26 19:49:57 +01:00
Fabian Mastenbroek
65082c6aa5
Add Linux 5.17
This change adds a release for Linux 5.17 for the Proxmox Edge kernels.
2022-03-21 16:53:50 +01:00
Fabian Mastenbroek
f6ea761a45
Remove use of headers_check
This change removes the use of headers_check from the build script,
since this target is removed from Linux since v5.15.

See 4fbce81933
2022-03-21 16:53:50 +01:00
Fabian Mastenbroek
7b237c1d85
Update to ZFS 2.1.3
This change updates the ZFS project to version 2.1.3.
2022-03-21 12:33:27 +01:00
Fabian Mastenbroek
e50352257c
Synchronize kernel patches with upstream
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.
2022-02-04 11:46:50 +01:00
Fabian Mastenbroek
b8de2740ea
Update ZFS patches
This change adds new patches from Proxmox for the ZFS project.
2022-02-04 11:46:40 +01:00
Fabian Mastenbroek
339e99fd87
Add Linux 5.16
This change adds a release for Linux 5.16 for the Proxmox Edge kernels.
2022-01-10 11:16:49 +01:00
Fabian Mastenbroek
fa9f77096c
Include Proxmox patches
This change adds recent patches included in the stock Proxmox kernels.
2022-01-05 22:25:00 +01:00
Fabian Mastenbroek
ed134665cb
Address AppArmor incompatibilities
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.
2022-01-05 22:17:11 +01:00
Fabian Mastenbroek
c70f237530
Update to ZFS 2.1.2
This change updates the ZFS version to 2.1.2 which supports kernels 3.10
to 5.15.
2021-12-29 11:16:47 +01:00
Fabian Mastenbroek
138e5893be
Reduce length of kernel version
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.
2021-11-28 15:13:01 +01:00
Fabian Mastenbroek
c2ad95159b
Include objtool in header package
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)
2021-11-21 13:27:00 +01:00
Andrii Moiseiev
35badf1804
Disable UBSAN (#163)
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
2021-11-10 10:15:10 +01:00
Fabian Mastenbroek
9614ffe091
Add Linux 5.15
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.
2021-11-02 10:07:37 +01:00
Fabian Mastenbroek
04df02380d
Update to ZFS 2.1.1
This change updates the ZFS version to 2.1.1 which supports kernels 3.10
to 5.14.
2021-09-24 11:42:22 +02:00
Fabian Mastenbroek
efb8844e8c
Remove kernel release from kernel version
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.
2021-09-05 11:56:17 +02:00
Fabian Mastenbroek
7bdb828f2f
Add release for Linux 5.14
This change adds the initial release of Linux 5.13 for the Proxmox Edge
kernels.
2021-08-30 10:50:59 +02:00
Fabian Mastenbroek
7e6346ae26
Update to ZFS 2.1.0 2021-08-30 10:50:57 +02:00
Fabian Mastenbroek
2bb89ae564
Build perf tools using Python 3
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.
2021-07-27 17:00:52 +02:00
Fabian Mastenbroek
09b09f0836
Add Linux 5.13 (#125)
This pull request adds the necessary changes for the new Linux release
version 5.13.
2021-06-28 17:57:16 +02:00
Fabian Mastenbroek
77d3d7fcc2
Add release for Linux 5.13
This change adds the initial release of Linux 5.13 for the Promox Edge
kernels.
2021-06-28 17:03:20 +02:00
Fabian Mastenbroek
a68b498de2
Update to ZFS 2.1.0-rc7 2021-06-28 17:03:17 +02:00
Fabian Mastenbroek
5845ba257b
Update to Linux 5.13 2021-06-28 16:40:19 +02:00
Fabian Mastenbroek
6ca487bca9
Add metapackage to track Linux kernel series
This change adds a metapackage that allows users to track the latest
Linux kernel version for a Linux stable branch.
2021-06-13 15:26:45 +02:00
Fabian Mastenbroek
870a62f633
Add Linux 5.12
This change updates the kernel to Linux 5.12 with support from the new
OpenZFS v2.1.0-rc5.
2021-05-24 14:24:46 +02:00
Fabian Mastenbroek
e1a0974313
Include documentation scripts in header package
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.
2021-05-03 10:25:29 +02:00
Fabian Mastenbroek
888e5a6f4d
Include necessary Makefiles in header package
This change adds the necessary Makefiles in the header package.
2021-05-02 15:38:48 +02:00
Fabian Mastenbroek
afe2ba30ae
Reduce the number of build dependencies 2021-04-19 19:44:25 +02:00
Fabian Mastenbroek
3650d4343a
Support in-tree builds
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.
2021-04-19 14:47:00 +02:00
Fabian Mastenbroek
7d07970695
Move common definitions in separate file 2021-04-19 12:34:45 +02:00
Fabian Mastenbroek
65aa877bb0
Simplify header packaging 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.
2021-04-18 18:09:40 +02:00
Fabian Mastenbroek
d8dafbe5c4
Build ZFS directly from upstream
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.
2021-04-18 13:34:08 +02:00
Fabian Mastenbroek
b3d615e84d
Rename package back to pve-kernel
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).
2021-04-18 11:46:33 +02:00
Fabian Mastenbroek
5e900bd9f3
Manage kernel patches with Quilt 2021-04-18 11:24:34 +02:00
Fabian Mastenbroek
972a1ef601
Switch to debhelper to orchestrate builds 2021-03-28 21:34:25 +02:00
Fabian Mastenbroek
e4c7b4be97
Move Debian templates to separate directory 2021-03-28 21:24:12 +02:00
Fabian Mastenbroek
4131522dd4
Update Debian copyright file 2021-03-28 21:24:10 +02:00
Fabian Mastenbroek
50a715df41
Move kernel configuration to file
This change moves the kernel build options to a separate file as opposed
to encoding it directly in a file.
2021-03-28 20:47:21 +02:00
Fabian Mastenbroek
7d99d922dd
Track Linux mainline on master
This change updates the repository organisation so that we track the
Linux mainline repository on master in this repository, with branches
tracking the stable releases.
2021-03-28 20:46:49 +02:00
Fabian Mastenbroek
1d84103cd8
Remove ABI and firmware checking scripts
This change removes the ABI and firmware checking scripts from the
repository since they are currently not being used in the pipeline.
2021-03-15 20:37:33 +01:00