Page 1 of 1

6.6.58 64bit Kernel Hi-Freq Non-Usrmerge Overlayfs-Only Spectre v2 fix

Posted: Thu Nov 14, 2024 11:22 pm
by ozsouth

I made a 64bit 6.6.58 Hi-Freq, Non-Usrmerge, Overlayfs-Only Kernel.
Has many input devices & more drivers set, with rtw88-8821ce unset. Runs my new Ideapad Slim 1i well.

THIS HAS A SPECTRE v2 FIX ENABLED. This kernel is different from the 6.6.58 aufs kernel I withdrew.
Has no firmware, but my fdrvs below contain basic sets.

CANNOT be used for Jammypup64 & later (USRMERGE Pups), UNLESS the kernel-modules & kernel_sources
(& non-usrmerge fdrvs) are run through a converter like this one: viewtopic.php?p=116744#p116744
'ovex' means overlayfs-only & either non-usrmerge (default) or usrmerge if converted. x = extras.

Has Voluntary Preemption, older ntfs-3g, vmd & Blake2s builtin, has 1000Hz frequency. Is TCP_SACK mitigated.
Is mostly Spectre/Meltdown mitigated (needs microcode too - see viewtopic.php?p=9658#p9658).
Used gcc 11.2.0 & glibc 2.33. Used 2018 Kernel-Kit Master, with only my essential-for-operation fixes.

CANNOT BE USED FOR AUFS-ONLY PUPS, & if you have a savefile/folder made with aufs, need to store it elsewhere.
To use it with overlayfs, need a specifc initrd.gz, or (if your puppy is more recent, like S15Pup64-22.12) have punionfs=overlay in the grub/syslinux linux/kernel line.

Briefly tested, OK in s15pup64_22.12+4 (overlayfs). Use at own risk.
For best results when using a savefile/savefolder, it is advisable to have that on an ext3 (or 4) partition.

wl & rtl8821ce wireless drivers are in forum Drivers section.
NOTE: many broadcom devices can use in-kernel b43 drivers. fdrv below has newer broadcom firmware to work with that.

Missing firmware is a big issue these days. That will stop devices running, even if driver is present.
To see if any is missing, in a maximised terminal run: dmesg | grep irmware
A source of extra firmware is here: https://github.com/endlessm/linux-firmware
For usrmerge pups (jammypup64, bookwormpup64, noblepup64 etc), files go in /usr/lib/firmware.
For all other pups, files go in /lib/firmware.

Once downloaded, expand in an empty folder with tar -jxvf, & rename kernel-modules.sfs-6.6.58-64oz-hf-nr-ovex to zdrv ... (same as one to be replaced) & rename vmlinuz-6.6.58-64oz-hf-nr-ovex to vmlinuz & then substitute for originals.
Important Note: when switching kernels, if you have an ...initmodules.txt file (i.e. fossapup64initmodules.txt or similar, in same folder as puppy sfs), must delete it before first boot into new kernel. Otherwise it may try to load modules that don't exist, causing failure.

Notes for Overlayfs: Devx, if named in same convention as puppy sfs for that pup, will load on boot, if in the same folder as puppy sfs. If devx loaded on the fly, compiling will fail, so best to have a separate install just for compiling, with no savefile/savefolder, naming kernel sources as ydrv & rebooting.
Also, savefolders/files cannot be shared by aufs & overlayfs, due to different structures.

Kernel: https://archive.org/download/Puppy_Linu ... ex.tar.bz2

Sources: https://archive.org/download/Puppy_Linu ... r-ovex.sfs

Headers: https://archive.org/download/Puppy_Linu ... x86_64.sfs

My 28oct24 med fdrv (65mb): https://www.mediafire.com/file/facaov76 ... 4.sfs/file
My 28oct24 lowmed fdrv (36mb): https://www.mediafire.com/file/twyvf8eb ... 4.sfs/file