diff options
| author | dd <dd@wx.tnyzeq.icu> | 2024-09-02 17:00:11 +0200 |
|---|---|---|
| committer | dd <dd@wx.tnyzeq.icu> | 2024-09-02 17:00:11 +0200 |
| commit | d3266ed27470deabbd8e0ee8ffdc750471eb603c (patch) | |
| tree | f4da8453a8700a417d32ca01466b8db2395aca89 /scripts/package-build/linux-kernel/README.md | |
| parent | ddf98b907a69f1bf35197a64b5e7879d4e530f11 (diff) | |
| parent | 9833897b7c70d7a00caef420edea5dd2e359d522 (diff) | |
| download | vyos-build-d3266ed27470deabbd8e0ee8ffdc750471eb603c.tar.gz vyos-build-d3266ed27470deabbd8e0ee8ffdc750471eb603c.zip | |
Merge branch 'vyos:current' into current
Diffstat (limited to 'scripts/package-build/linux-kernel/README.md')
| -rw-r--r-- | scripts/package-build/linux-kernel/README.md | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/scripts/package-build/linux-kernel/README.md b/scripts/package-build/linux-kernel/README.md new file mode 100644 index 00000000..56954e5a --- /dev/null +++ b/scripts/package-build/linux-kernel/README.md @@ -0,0 +1,41 @@ +# Build +``` +./build.py --config package.toml --packages linux-kernel accel-ppp xxx +``` + +# About + +VyOS runs on a custom Linux Kernel (which is 4.19) at the time of this writing. +This repository holds a Jenkins Pipeline which is used to build the Custom +Kernel (x86_64/amd64 at the moment) and all required out-of tree modules. + +VyOS does not utilize the build in Intel Kernel drivers for its NICs as those +Kernels sometimes lack features e.g. configurable receive-side-scaling queues. +On the other hand we ship additional not mainlined features as WireGuard VPN. + +## Kernel + +The Kernel is build from the vanilla repositories hosted at https://git.kernel.org. +VyOS requires two additional patches to work which are stored in the patches/kernel +folder. + +### Config + +The Kernel configuration used is [x86_64_vyos_defconfig](x86_64_vyos_defconfig) +which will be copied on demand during the Pipeline run into the `arch/x86/configs`i +direcotry of the Kernel source tree. + +Other configurations can be added in the future easily. + +### Modules + +VyOS utilizes several Out-of-Tree modules (e.g. WireGuard, Accel-PPP and Intel +network interface card drivers). Module source code is retrieved from the +upstream repository and - when needed - patched so it can be build using this +pipeline. + +In the past VyOS maintainers had a fork of the Linux Kernel, WireGuard and +Accel-PPP. This is fine but increases maintenance effort. By utilizing vanilla +repositories upgrading to new versions is very easy - only the branch/commit/tag +used when cloning the repository via [Jenkinsfile](Jenkinsfile) needs to be +adjusted. |
