You are not logged in.
The only machine I have access to with enough oomph to (re)build the kernel multiple times is currently tied up developing some ESP32 firmware. Hopefully I will be able to spend some time over the weekend. I had a look through the (surprising long) changelog for 6.11.3 at https://cdn.kernel.org/pub/linux/kernel … Log-6.11.3 and might try to cherry pick some commits (thanks @seth) before trying a full bisect cycle.
If you want some help with the bisection before the weekend gromit or I could build bisection kernels for you.
Online
$ uname -a
Linux skunk-develop 6.12.0-rc4-1-mainline #1 SMP PREEMPT_DYNAMIC Mon, 21 Oct 2024 00:01:57 +0000 x86_64 GNU/Linux
Works fine here. Hopefully none of the bad commit(s) will migrate into mainline and pollute it.
Offline
@loqs, do you have a PKGBUILD for building the archlinux kernel out of git?
https://bbs.archlinux.org/viewtopic.php … 8#p2204438
Offline
6.11.3 with 5291ff856d2c5177b4fe9c18828312be30213193 reverted
linux-6.11.3.arch1-1.2-x86_64.pkg.tar.zst/linux-headers-6.11.3.arch1-1.2-x86_64.pkg.tar.zst
6.11.3 with 8c3f7943a29145d8a2d8e24893762f7673323eae reverted:
linux-6.11.3.arch1-1.4-x86_64.pkg.tar.zst/linux-headers-6.11.3.arch1-1.4-x86_64.pkg.tar.zst
diff of changes to build 6.11.3 from upstream kernel.org from git does it need to be Arch's tag?
diff --git a/PKGBUILD b/PKGBUILD
index 71b747f..813a961 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jan Alexander Steffens (heftig) <heftig@archlinux.org>
pkgbase=linux
-pkgver=6.11.3.arch1
+pkgver=6.11.3
pkgrel=1
pkgdesc='Linux'
url='https://github.com/archlinux/linux'
@@ -17,23 +17,17 @@ makedepends=(
python
tar
xz
-
- # htmldocs
- graphviz
- imagemagick
- python-sphinx
- python-yaml
- texlive-latexextra
+ git
)
options=(
!debug
!strip
)
-_srcname=linux-${pkgver%.*}
-_srctag=v${pkgver%.*}-${pkgver##*.}
+_srcname=linux
+_srctag=v${pkgver}
+
source=(
- https://cdn.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/${_srcname}.tar.{xz,sign}
- $url/releases/download/$_srctag/linux-$_srctag.patch.zst{,.sig}
+ "git+https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git#tag=${_srctag}?signed"
config # the main kernel config file
)
validpgpkeys=(
@@ -42,27 +36,29 @@ validpgpkeys=(
83BC8889351B5DEBBB68416EB8AC08600F108CDF # Jan Alexander Steffens (heftig)
)
# https://www.kernel.org/pub/linux/kernel/v6.x/sha256sums.asc
-sha256sums=('057263d0afc17d5253794afd3d239ba4da4aa734b22fa36c1665f41b95449b73'
- 'SKIP'
- '30683bfd1ee6cfcb9a1491fc52306f94282c252964f88da14e8b21b32af82920'
- 'SKIP'
+sha256sums=('63b8c1628eb14c4a0d65b8b601d928ff673fbaa92f4ecf2d08da8edeabea072a'
'6c4d63503c77465232fe4ed42671261b476bb0bfd1223b1a3da4afcc1cd615fb')
-b2sums=('69582e4745850f3ec004d87859ac88994e3715ed38cd66aff2633fbcb6c20ca2e3be83417cd2c42c2757ab4e084e622c688799b5ad28e15c391adb2afab79a68'
- 'SKIP'
- '9d5db395f525fff7a9d87bf6301d907fefa7f864bc7be712a72d17ceefefb6cd09afe19153df43ab5cd4d2c7abce9a1bfe974b909c5f27e4b818fffa29932a73'
- 'SKIP'
+b2sums=('027058e2970c767fd5af5cbf885d61a5e269d9a5a41b3eaf25f58192b618052660bc78a30e9b7932a085aab7d627fc5924fe09be9f1fbf4a531efaf1821b1a39'
'9ab6e9162c8a443dab748b8a6be946d5b112c617c4192a6219c515c23883e30978838411491c86c08679e559f952e5a6d727f5bacde00e18bbb60004ef0c213f')
export KBUILD_BUILD_HOST=archlinux
export KBUILD_BUILD_USER=$pkgbase
export KBUILD_BUILD_TIMESTAMP="$(date -Ru${SOURCE_DATE_EPOCH:+d @$SOURCE_DATE_EPOCH})"
+_make() {
+ test -s version
+ make KERNELRELEASE="$(<version)" "$@"
+}
+
prepare() {
cd $_srcname
echo "Setting version..."
echo "-$pkgrel" > localversion.10-pkgrel
echo "${pkgbase#linux}" > localversion.20-pkgname
+ make defconfig
+ make -s kernelrelease > version
+ make mrproper
local src
for src in "${source[@]}"; do
@@ -76,18 +72,22 @@ prepare() {
echo "Setting config..."
cp ../config .config
- make olddefconfig
+ _make olddefconfig
diff -u ../config .config || :
- make -s kernelrelease > version
echo "Prepared $pkgbase version $(<version)"
}
+pkgver() {
+ cd $_srcname
+
+ git describe | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g;s/\.rc/rc/'
+}
+
build() {
cd $_srcname
- make all
- make -C tools/bpf/bpftool vmlinux.h feature-clang-bpf-co-re=1
- make htmldocs
+ _make all
+ _make -C tools/bpf/bpftool vmlinux.h feature-clang-bpf-co-re=1
}
_package() {
@@ -117,13 +117,13 @@ _package() {
echo "Installing boot image..."
# systemd expects to find the kernel here to allow hibernation
# https://github.com/systemd/systemd/commit/edda44605f06a41fb86b7ab8128dcf99161d2344
- install -Dm644 "$(make -s image_name)" "$modulesdir/vmlinuz"
+ install -Dm644 "$(_make -s image_name)" "$modulesdir/vmlinuz"
# Used by mkinitcpio to name the kernel
echo "$pkgbase" | install -Dm644 /dev/stdin "$modulesdir/pkgbase"
echo "Installing modules..."
- ZSTD_CLEVEL=19 make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \
+ ZSTD_CLEVEL=19 _make INSTALL_MOD_PATH="$pkgdir/usr" INSTALL_MOD_STRIP=1 \
DEPMOD=/doesnt/exist modules_install # Suppress depmod
# remove build link
@@ -213,29 +213,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() {
Online
It's anecdotal, but 6.11.4 seemed to have solved the problem for me on my Framework 13 AMD. However, 6.11.5 has at least partially brought back the problem. I'm able to re-pair and connect with some devices, but my Apple Magic Trackpad will not connect, not matter what I try.
Offline
@loqs, not necessarily.
I had imagined you were bisecting github.com/archlinux/linux to incorporate the downstream patches relevant to each minor release (cause that's what the users initially face), but in the grand scheme of things, they're probably rarely causing major differences for the bisection tests.
Thanks for the diff.
Offline
Bisecting github.com/archlinux/linux takes slightly more work to setup as that repo does not contain the kernel.org tags which leads to confusing version strings so kernel.org stable needs to be added as as well and the tags fetched.
Online