You are not logged in.
Nope, I've not got the bandwidth to apply a patch to a kernel at the moment...
The kernel I built is roughly the same size as the Arch one 148M vs 147M.
I'm betting on the fix being known and queued but the lack of the fix in 6.3.3 is starting to get me spooked.
https://git.kernel.org/pub/scm/linux/ke … 383c9b7b02 Assuming this is the right patch (which is why I asked you to test a kernel with it applied) is now queued for 6.3.4.
Online
fommil wrote:Nope, I've not got the bandwidth to apply a patch to a kernel at the moment...
The kernel I built is roughly the same size as the Arch one 148M vs 147M.
fommil wrote:I'm betting on the fix being known and queued but the lack of the fix in 6.3.3 is starting to get me spooked.
https://git.kernel.org/pub/scm/linux/ke … 383c9b7b02 Assuming this is the right patch (which is why I asked you to test a kernel with it applied) is now queued for 6.3.4.
Sorry by bandwidth I meant mental bandwidth :-)
It's been a long long time since I last ran a patched kernel and I've forgotten everything about how to do it on Archlinux. I can probably build and run a custom kernel if you have an ABS package descriptor. It's adding the lines to apply the patches and so forth that always catches me out.
Last edited by fommil (2023-05-23 10:35:16)
Offline
I am providing built packages so all you would need to do is
# pacman -U linux-6.3.2.arch1-1.2-x86_64.pkg.tar.zst linux-headers-6.3.2.arch1-1.2-x86_64.pkg.tar.zst
To switch back to the official apckages
# pacman -S linux linux-headers
Online
I am providing built packages so all you would need to do is
# pacman -U linux-6.3.2.arch1-1.2-x86_64.pkg.tar.zst linux-headers-6.3.2.arch1-1.2-x86_64.pkg.tar.zst
To switch back to the official apckages
# pacman -S linux linux-headers
Thanks for the offer, but I'd only be interested in running a patched kernel that I'd built myself.
Do you have the ABS files around or a diff vs the upstream? I'd be looking to patch 6.3.3.
Offline
I'm going through the docs at https://wiki.archlinux.org/title/Kernel … ild_system it's been a while but I seem to be on track. Will report back later.
Offline
diff of the PKGBUILD to add the patch, increment pkgver to 1.1 and not build the docs
diff --git a/PKGBUILD b/PKGBUILD
index 4e72b78..ca12805 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
pkgbase=linux
pkgver=6.3.3.arch1
-pkgrel=1
+pkgrel=1.1
pkgdesc='Linux'
_srctag=v${pkgver%.*}-${pkgver##*.}
url="https://github.com/archlinux/linux/commits/$_srctag"
@@ -16,20 +16,15 @@ makedepends=(
libelf
pahole
perl
+ python
tar
xz
-
- # htmldocs
- graphviz
- imagemagick
- python-sphinx
- texlive-latexextra
- xmlto
)
options=('!strip')
_srcname=archlinux-linux
source=(
"$_srcname::git+https://github.com/archlinux/linux?signed#tag=$_srctag"
+ 0257d9908d38c0b1669af4bb1bc4dbca1f273fe6.patch::https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git/patch/?id=0257d9908d38c0b1669af4bb1bc4dbca1f273fe6
config # the main kernel config file
)
validpgpkeys=(
@@ -39,6 +34,7 @@ validpgpkeys=(
C7E7849466FE2358343588377258734B41C31549 # David Runge <dvzrv@archlinux.org>
)
b2sums=('SKIP'
+ '28a21de85363c6aabd76ea3e0540adfac1759ea24c083c97c151370b97f786f97ece2ea1ccd4b198784ea139c898c4378a799bd2f1ad50fb319d01c8ae68e1e3'
'c2d1c69265adc041dc0364e448f6e86dc4c9ca1207c84071abc1675dd820534a8ab5a230e579e68bfb1bf2b861f23ad34e090f8ceaef5e265ea95e2bc6946013')
export KBUILD_BUILD_HOST=archlinux
@@ -79,7 +75,7 @@ prepare() {
build() {
cd $_srcname
- _make htmldocs all
+ all
}
_package() {
@@ -204,29 +200,9 @@ _package-headers() {
ln -sr "$builddir" "$pkgdir/usr/src/$pkgbase"
}
-_package-docs() {
- pkgdesc="Documentation for the $pkgdesc kernel"
-
- cd $_srcname
- local builddir="$pkgdir/usr/lib/modules/$(<version)/build"
-
- echo "Installing documentation..."
- local src dst
- while read -rd '' src; do
- dst="${src#Documentation/}"
- dst="$builddir/Documentation/${dst#output/}"
- install -Dm644 "$src" "$dst"
- done < <(find Documentation -name '.*' -prune -o ! -type d -print0)
-
- echo "Adding symlink..."
- mkdir -p "$pkgdir/usr/share/doc"
- ln -sr "$builddir/Documentation" "$pkgdir/usr/share/doc/$pkgbase"
-}
-
pkgname=(
"$pkgbase"
"$pkgbase-headers"
- "$pkgbase-docs"
)
for _p in "${pkgname[@]}"; do
eval "package_$_p() {
As a source tarball:
https://drive.google.com/file/d/1gBhFk- … share_link linux-6.3.3.arch1-1.1.src.tar.gz
Edit:
I deleted too much of line 78 it should be
_make all
instead of just
all
Last edited by loqs (2023-05-23 15:54:59)
Online
I'm struggling to use the new tools, they are doing too much GPG validation...
==> Verifying source file signatures with gpg...
archlinux-linux git repo ... SIGNATURE NOT FOUND
==> ERROR: One or more PGP signatures could not be verified!
any ideas? I grabbed the git repo directly because I get gitlab ssh failures when I do
pkgctl repo clone linux
Offline
nevermind,
--skippgpcheck
gets me past that. Which is sad, it should really tell me which key was missing (I added all the keys that were listed in the PKGBUILD)
Offline
$ pkgctl repo clone --unprivileged linux # clone the package using https
$ cd linux
$ gpg --import keys/pgp/* # import the keys
Add the patch to the source array
$ updpkgsums # generate its checksum
$ pkgctl build # build the package
Online
$ pkgctl repo clone --unprivileged linux # clone the package using https $ cd linux $ gpg --import keys/pgp/* # import the keys
Add the patch to the source array
$ updpkgsums # generate its checksum $ pkgctl build # build the package
ah, cool. Wish I knew that a few hours ago, the docs seem to need an update.
In any case, it works! This patch does indeed seem to revert the behaviour. Now hopefully it'll make it into the LTS kernels as well.
Do you think there is any chance of convincing the powers-that-be of a 6.3.3-arch2 release including this patch in the meantime?
Offline
Do you think there is any chance of convincing the powers-that-be of a 6.3.3-arch2 release including this patch in the meantime?
Not really as the next upstream releases is due Thursday https://lore.kernel.org/stable/20230523 … ation.org/
Online