Skip to content

BobZKernel v7.1.0 - Intel Raptor Lake (march=native)

Choose a tag to compare

@thewraith420 thewraith420 released this 18 Jun 17:18
· 5 commits to linux-7.1 since this release

First Linux 7.1 release of BobZKernel — built on v7.1 mainline (the .0 release) with the BobZKernel patch stack on top.

This is the march=native variant, tuned for Intel Raptor Lake (13th Gen) on the Lenovo Legion / LOQ 15IRH8. See the compatibility section before downloading.

Note on the version string: kernel.org tagged this release as bare v7.1, but the Makefile expands SUBLEVEL=0 so the runtime kernel version reports as 7.1.0-BobZKernel. Identical content to the upstream v7.1 tag — just labeled differently at runtime.

What's new since the 7.0.x line

  • Linux 7.1 base — first 7.1 release; ~9 weeks of mainline development on top of 7.0.x.
  • Dropped patch: 0001-rt-i915.patch — CachyOS dropped this for the 7.1 stack and we followed. It's a PREEMPT_RT compatibility shim (wraps local_irq_disable() calls in if (!IS_ENABLED(CONFIG_PREEMPT_RT)) guards). We build CONFIG_PREEMPT_DYNAMIC=y, not PREEMPT_RT, so those guards compile-time evaluate to true and the patch was a no-op for our config.
  • Updated patches — 0001-acpi-call, 0001-bore, and dkms-clang are refreshed from CachyOS's 7.1 stack.
  • Same custom patches — our 9003-rseq-latency-histogram and 9100-platform-profile-accept-custom ported forward unchanged; both dry-run clean against v7.1.

Features

  • BORE scheduler (vanilla-compatible, CONFIG_SCHED_BORE=y)
  • CONFIG_RSEQ_SLICE_EXTENSION=y with the 9003-rseq-latency-histogram observability patch
    • Runtime tunable: /sys/kernel/debug/rseq/slice_ext_nsec (5000–50000 ns)
    • Stats: /sys/kernel/debug/rseq/stats
  • 9100-platform-profile-accept-custom patch (Lenovo Legion/LOQ TLP integration)
  • LTO Clang Full (CONFIG_LTO_CLANG_FULL=y) built with Clang/LLVM-19
  • march=native tuned to Intel i5-13420H (Raptor Lake)
  • 1000 Hz timer, dynamic preemption (CONFIG_PREEMPT_DYNAMIC=y)
  • BBRv3 TCP congestion control (default)
  • ZRAM + ZSWAP (zstd)
  • RANDSTRUCT Full (kernel struct layout randomization)

Compatibility

This binary is built with march=native targeting Intel Raptor Lake (13th Gen). Realistic compatibility:

CPU Will it boot?
Intel 12th / 13th / 14th Gen (Alder/Raptor Lake) Yes
Intel 11th Gen (Tiger Lake) Likely (test on a non-critical box first)
Intel 10th Gen and older No — build from source instead
AMD (any) No — build from source instead

If your CPU isn't in the "Yes" row, don't install this binary. Build from source — the pipeline auto-tunes via -march=native on the build host:

git clone -b linux-7.1 https://github.com/thewraith420/BobZKernel
cd BobZKernel
./scripts/update-and-build-7.1.sh

The 7.1 build script supports cold start (auto-clones builds/linux-7.1/ from kernel.org if missing).

Install

# verify the checksum first
sha256sum BobZKernel-7.1.0-march-native-installer.tar.gz
# 8d61b4af43206427087e5ec9005f9b2219db3c63e7b27ad06dc3f670e57320c6

tar -xzf BobZKernel-7.1.0-march-native-installer.tar.gz
sudo ./install.sh

The installer auto-detects your distro and bootloader; tested target families:

  • Debian / Ubuntu / Linux Mint / Pop!_OS
  • Fedora / RHEL / CentOS / Rocky / AlmaLinux
  • Arch / Manjaro / EndeavourOS / CachyOS
  • openSUSE / SLES

It runs a CPU vendor check before install and bails on non-Intel hardware (with a confirmation prompt to force-proceed if you really know what you're doing).

After reboot, pick 7.1.0-BobZKernel from your GRUB menu.

DKMS modules (NVIDIA, etc.)

The tarball ships only the kernel + in-tree modules. Out-of-tree DKMS modules need to rebuild themselves against the new kernel:

sudo dkms autoinstall -k 7.1.0-BobZKernel

NVIDIA + RANDSTRUCT

This kernel uses CONFIG_RANDSTRUCT_FULL=y. The NVIDIA proprietary driver needs a small source patch (__no_randomize_layout) to build against RANDSTRUCT kernels — without it you get a kernel panic on suspend. The fix lives at scripts/nvidia-randstruct-fix.sh in this repo; run it on the NVIDIA DKMS source before dkms autoinstall.

LenovoLegionLinux (Legion / LOQ)

Install upstream LLL after booting this kernel:

git clone https://github.com/johnfanv2/LenovoLegionLinux
cd LenovoLegionLinux/kernel_module
sudo make dkms-install

Then update /etc/tlp.conf:

PLATFORM_PROFILE_ON_AC=custom        # purple LED, performance mode
PLATFORM_PROFILE_ON_BAT=low-power    # blue LED, battery saver

The custom profile only works because of the 9100-platform-profile-accept-custom patch in this kernel — on a stock kernel that write returns -EINVAL.

Uninstall

sudo ./uninstall.sh

Removes /boot files, /lib/modules tree, and regenerates GRUB.

Build provenance

  • Built from source at commit 9a0f518 on the linux-7.1 branch
  • Built with Clang 19.1.7 on Debian trixie
  • Built on a Lenovo LOQ 15IRH8 (i5-13420H)
  • See VERSION inside the tarball for the full manifest

Status of the 7.0 line

v7.0.11 and v7.0.12 remain published. The linux-7.0 branch will continue to receive 7.0.x stable bumps as kernel.org cuts them, in parallel with 7.1.x development on linux-7.1.

License

GPL-2.0 (Linux kernel license).