Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 891315 - sys-kernel/gentoo-sources-5.15.88 fails to boot with app-arch/lbzip2 and CONFIG_KERNEL_BZIP2
Summary: sys-kernel/gentoo-sources-5.15.88 fails to boot with app-arch/lbzip2 and CONF...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Matt Turner
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-18 16:44 UTC by Scott McClung
Modified: 2023-01-27 04:52 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
.config used with genkernel (config-5.15.88-gentoo,170.43 KB, text/plain)
2023-01-18 18:16 UTC, Scott McClung
Details
Working bzip2 configuration with app-arch/bzip2 (bzip2.config,175.97 KB, text/plain)
2023-01-24 16:45 UTC, Scott McClung
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Scott McClung 2023-01-18 16:44:47 UTC
The kernel fails to decompress at boot, taking you back to the grub menu.  It is difficult to catch boot messages that early, but I believe that the kernel is failing to decompress properly if compressed with lbzip2

Reproducible: Always

Steps to Reproduce:
1. Build app-alternatives/bzip2[lbzip2 -pbzip2 -reference]
2. Build sys-kernel/gentoo-sources with CONFIG_KERNEL_BZIP2
3. Reboot on newly compiled kernel
Actual Results:  
Kernel fails to boot, crashing early in the boot process.

Expected Results:  
Kernel boots normally.

Switching to the XZ compression method (CONFIG_KERNEL_XZ), or changing the USE flags for app-alternatives/bzip2[reference]
Comment 1 Scott McClung 2023-01-18 16:47:03 UTC
The last part should read: "Switching to the XZ compression method (CONFIG_KERNEL_XZ), or changing the USE flags for app-alternatives/bzip2[reference] both seem to work around this problem"

I'm assuming the other compression methods may work as well, I just tried XZ first and it worked.
Comment 2 Mike Gilbert gentoo-dev 2023-01-18 17:00:20 UTC
Assigning to the lbzip2 maintainer since I assume this is some bug in its compressor that makes it incompatible with the reference implementation.

It could also be a kernel bug.
Comment 3 Mike Pagano gentoo-dev 2023-01-18 17:01:55 UTC
Can you attach your .config, please?
Comment 4 Scott McClung 2023-01-18 18:16:12 UTC
Created attachment 848775 [details]
.config used with genkernel
Comment 5 Scott McClung 2023-01-18 18:16:34 UTC
Portage 3.0.43 (python 3.10.9-final-0, default/linux/amd64/17.1, gcc-11, glibc-2.36-r5, 5.15.88-gentoo-x86_64 x86_64)
=================================================================
System uname: Linux-5.15.88-gentoo-x86_64-x86_64-Intel-R-_Core-TM-_i7-4770_CPU_@_3.40GHz-with-glibc2.36
KiB Mem:    32825776 total,    739148 free
KiB Swap:   50331640 total,  50254840 free
Timestamp of repository gentoo: Wed, 18 Jan 2023 15:45:01 +0000
Head commit of repository gentoo: 5babbba77e65af65f422b497b019b4b9fb385ba1
Timestamp of repository brave-overlay: Mon, 16 Jan 2023 21:17:22 +0000
Head commit of repository brave-overlay: 0e61a2d526183621ffcb84972c0432709f00e4f0

Timestamp of repository brother-overlay: Mon, 16 Jan 2023 21:17:19 +0000
Head commit of repository brother-overlay: 4f0ca27f1e4439db85c8222dfd7c88637782006b

Timestamp of repository dlang: Fri, 13 Jan 2023 15:02:06 +0000
Head commit of repository dlang: 267fb0a3fab9d348f827be5f2039e52abb4c1745

Head commit of repository e16-overlay: 7eac764d0e52084d2e8d823552fc58d0514f8f48

Timestamp of repository haskell: Mon, 16 Jan 2023 20:32:11 +0000
Head commit of repository haskell: 2dd5143a69a421534adb97f73625ffce7038a959

Timestamp of repository linuxunderground-overlay: Sat, 14 Jan 2023 11:32:49 +0000
Head commit of repository linuxunderground-overlay: edc028d5c0b588efc0589f53c705dea3a313c07b

Timestamp of repository palemoon: Tue, 03 Jan 2023 09:03:35 +0000
Head commit of repository palemoon: fed63a03502637f487db1edcbcd437dd9a59fe1b

Timestamp of repository steam-overlay: Mon, 16 Jan 2023 21:17:17 +0000
Head commit of repository steam-overlay: 399dcc47ff5087990d25290ecd2f17a61704e41d

Head commit of repository local: 8fc629d7ef45c2d10c03354d85c7a739f83386c4

sh bash 5.1_p16-r2
ld GNU ld (Gentoo 2.39 p5) 2.39.0
distcc 3.4 x86_64-pc-linux-gnu [enabled]
ccache version 4.7.4 [disabled]
app-misc/pax-utils:        1.3.5::gentoo
app-shells/bash:           5.1_p16-r2::gentoo
dev-java/java-config:      2.3.1::gentoo
dev-lang/perl:             5.36.0-r1::gentoo
dev-lang/python:           2.7.18_p16::gentoo, 3.10.9::gentoo, 3.11.1::gentoo
dev-lang/rust:             1.66.1::gentoo
dev-lang/rust-bin:         1.66.1::gentoo
dev-util/ccache:           4.7.4::gentoo
dev-util/cmake:            3.24.3::gentoo
dev-util/meson:            0.64.1::gentoo
sys-apps/baselayout:       2.9::gentoo
sys-apps/openrc:           0.45.2-r2::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-devel/autoconf:        2.13-r7::gentoo, 2.69-r8::gentoo, 2.71-r5::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.39-r4::gentoo
sys-devel/binutils-config: 5.4.1::gentoo
sys-devel/clang:           14.0.6-r1::gentoo, 15.0.6-r1::gentoo
sys-devel/gcc:             11.3.1_p20221209::gentoo
sys-devel/gcc-config:      2.8::gentoo
sys-devel/libtool:         2.4.7::gentoo
sys-devel/lld:             15.0.6::gentoo
sys-devel/llvm:            14.0.6-r2::gentoo, 15.0.6-r1::gentoo
sys-devel/make:            4.3::gentoo
sys-kernel/linux-headers:  5.15-r3::gentoo (virtual/os-headers)
sys-libs/glibc:            2.36-r5::gentoo
sys-libs/libselinux:       3.4::gentoo
Repositories:

gentoo
    location: /var/db/repos/gentoo
    sync-type: rsync
    sync-uri: rsync://server.mcclung.systems/gentoo-portage
    priority: -1000
    volatile: True
    sync-rsync-verify-jobs: 1
    sync-rsync-extra-opts: -4
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: no

brave-overlay
    location: /var/db/repos/brave-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/brave-overlay.git
    masters: gentoo
    volatile: True

brother-overlay
    location: /var/db/repos/brother-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/brother-overlay.git
    masters: gentoo
    volatile: True

dlang
    location: /var/db/repos/dlang
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/dlang.git
    masters: gentoo
    volatile: True

e16-overlay
    location: /var/db/repos/e16-overlay
    sync-type: git
    sync-uri: https://raw.githubusercontent.com/mcclung/e16-overlay/master/repositories.xml
    masters: gentoo
    volatile: True

haskell
    location: /var/db/repos/haskell
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/haskell.git
    masters: gentoo
    volatile: True

linuxunderground-overlay
    location: /var/db/repos/linuxunderground-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/linuxunderground-overlay.git
    masters: gentoo
    volatile: True

palemoon
    location: /var/db/repos/palemoon
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/palemoon.git
    masters: gentoo
    volatile: True

steam-overlay
    location: /var/db/repos/steam-overlay
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/steam-overlay.git
    masters: gentoo
    volatile: True

crossdev
    location: /usr/local/crossdev-overlay
    masters: gentoo
    priority: 50
    volatile: True

local
    location: /usr/local/portage
    sync-type: git
    sync-uri: http://github.com/mcclung/local-portage.git
    masters: gentoo
    priority: 50
    volatile: True

perl
    location: /usr/local/perl-overlay
    masters: gentoo
    priority: 50
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -march=haswell -mabm -maes --param l1-cache-line-size=64 --param l1-cache-size=32 --param l2-cache-size=8192 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/grs/systems.conf /etc/stunnel/stunnel.conf /etc/teamspeak3-server/ts3server.ini /etc/teamspeak3-server/ts3server_mariadb.ini /etc/teamspeak3-server/tsdns_settings.ini /usr/lib64/libreoffice/program/sofficerc /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.8/conf /usr/share/themes/oxygen-gtk/gtk-2.0 /var/bind /var/lib/i2pd/certificates /var/spool/munin-async/.ssh"
CONFIG_PROTECT_MASK="/etc/angband/gamedata/ /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.4/ext-active/ /etc/php/apache2-php8.0/ext-active/ /etc/php/apache2-php8.1/ext-active/ /etc/php/cgi-php7.4/ext-active/ /etc/php/cgi-php8.0/ext-active/ /etc/php/cgi-php8.1/ext-active/ /etc/php/cli-php7.4/ext-active/ /etc/php/cli-php8.0/ext-active/ /etc/php/cli-php8.1/ext-active/ /etc/php/fpm-php7.4/ext-active/ /etc/php/fpm-php8.0/ext-active/ /etc/php/fpm-php8.1/ext-active/ /etc/php/phpdbg-php7.4/ext-active/ /etc/php/phpdbg-php8.0/ext-active/ /etc/php/phpdbg-php8.1/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -march=haswell -mabm -maes --param l1-cache-line-size=64 --param l1-cache-size=32 --param l2-cache-size=8192 -pipe"
DISTDIR="/var/cache/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --keep-going --buildpkg --buildpkg-exclude 'virtual/* sys-kernel/*-sources */*-bin'"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -march=haswell -mabm -maes --param l1-cache-line-size=64 --param l1-cache-size=32 --param l2-cache-size=8192 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg buildpkg-live cgroup compress-build-logs compressdebug config-protect-if-modified distcc distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict news notitles parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -march=haswell -mabm -maes --param l1-cache-line-size=64 --param l1-cache-size=32 --param l2-cache-size=8192 -pipe"
GENTOO_MIRRORS="http://gentoo.mirrors.ovh.net/gentoo-distfiles/ http://www.mirrorservice.org/sites/distfiles.gentoo.org/ http://www.gtlib.gatech.edu/pub/gentoo https://gentoo.osuosl.org/ https://mirrors.rit.edu/gentoo/ http://gentoo-mirror.flux.utah.edu/ http://gentoo.gossamerhost.com https://mirror.csclub.uwaterloo.ca/gentoo-distfiles/"
LANG="C"
LC_ALL="C"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
LINGUAS="en"
MAKEOPTS="-j16"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
SHELL="/bin/bash"
USE="X Xaw3d acl alsa amd64 apache2 avx bash-completion bzip2 caps cdr cleartype cli crypt curl dbus dmx dri dvd elogind emacs fam ffmpeg fortran gdbm gif glut gme gtk gui guile hal iconv imlib iproute2 ipv6 jpeg jpeg2k kerberos ladspa lcd libass libedit libglvnd libnotify libtirpc logwatch lua lzma mad mp3 mpeg multilib ncurses nls nptl nptlonly nvidia ogg openal opencl openexr opengl openmp openrc pam pango pcre pdf perl png policykit profile python readline rpc rtmp sdl seccomp slang split-usr sse sse2 sse3 sse4 ssh ssl ssse3 static-libs svg systemtap tcl tcpd test-rust threads tiff tools truetype unicode unwind vdpau vhosts vim-syntax vnc vorbis vpx webm webp x265 xattr xcb xine xinerama xml xrandr xvfb xz zlib" ABI_X86="64 32" ADA_TARGET="gnat_2021" ALSA_CARDS="emu10k1 pcsp loopback" APACHE2_MODULES="access_compat actions alias asis auth_basic auth_digest authn_alias authn_anon authn_core authn_dbd authn_dbm authn_default authn_file authz_core authz_dbd authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cache_disk cgi cgid dav dav_fs dav_lock dbd deflate dir disk_cache dumpio env expires ext_filter file_cache filter headers http2 ident imagemap include info log_config log_forensic logio macro mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_fcgi proxy_ftp proxy_html proxy_http proxy_scgi proxy_wstunnel slotmem_shm ratelimit remoteip reqtimeout rewrite setenvif socache_shmcb speling status unique_id unixd userdir usertrack version vhost_alias xml2enc" APACHE2_MPMS="worker" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="aggregation apache apcups battery bind cgroups conntrack contextswitch cpu cpufreq cpusleep csv curl curl_json curl_xml dbi df disk dns email entropy ethstat exec fhcount filecount fscache hddtemp hugepages interface ipc iptables irq load logfile lvm match_hashed match_regex match_timediff match_value mbmon mcelog md memory mqtt mysql netlink network nfs notify_desktop notify_email ntpd openvpn perl ping postgresql processes protocols python rrdcached rrdtool sensors smart snmp swap syslog tail tail_csv target_notification target_replace target_scale target_set tcpconns thermal threshold tokyotyrant uptime users virt write_graphite write_http write_log write_tsdb" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sse sse2 sse3 sse4_1 sse4_2 ssse3" CURL_SSL="openssl" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc efi-32 efi-64 emu" INPUT_DEVICES="evdev libinput" KERNEL="linux" L10N="en" LCD_DEVICES="cfontz glcd hd44780 mtxorb t6963 picolcd rawserial serialpos serialvfd text xosd rs232 displaylink framebuffer i2c" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher" LLVM_TARGETS="AArch64 AMDGPU ARM BPF Hexagon Lanai MSP430 Mips NVPTX PowerPC Sparc SystemZ X86 XCore WebAssembly RISCV ARC AVR CSKY VE" LUA_SINGLE_TARGET="lua5-4" LUA_TARGETS="lua5-1 lua5-3 lua5-4 luajit" OFFICE_IMPLEMENTATION="libreoffice" OPENMPI_FABRICS="sctp" PHP_TARGETS="php7-4 php8-0 php8-1" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_10" PYTHON_TARGETS="python3_10 python3_11" QEMU_SOFTMMU_TARGETS="alpha arm i386 m68k mips mips64 mips64el mipsel ppc64 s390x sparc sparc64 x86_64 aarch64 cris lm32 microblaze microblazeel moxie nios2 or1k ppc ppcemb sh4 sh4eb tricore unicore32 xtensa xtensaeb hppa riscv32 riscv64 avr rx loongarch64" QEMU_USER_TARGETS="alpha arm armeb i386 m68k mips mips64 mips64el mipsel mipsn32el ppc64 ppc64abi32 s390x sparc sparc32plus sparc64 x86_64 aarch64 cris hppa microblaze microblazeel mipsn32 nios2 or1k ppc ppc64le sh4 sh4eb tilegx aarch64_be riscv32 riscv64 xtensa xtensaeb loongarch64" RUBY_TARGETS="ruby27 ruby30" USERLAND="GNU" VIDEO_CARDS="nvidia nv nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
Comment 6 Scott McClung 2023-01-18 18:28:41 UTC
I've had a similar configuration fail now on 4 machines, 3 physical Core i7 boxes of various vintages and a KVM VM.   After my system finishes updating today, I'll be running some further compiles to verify some assumptions.

If there's any other data I can provide please let me know.
Comment 7 Mike Pagano gentoo-dev 2023-01-18 18:55:53 UTC
Your attached config has:

# CONFIG_KERNEL_BZIP2 is not set

Is this because you were testing and this is your config that works?
Comment 8 Scott McClung 2023-01-18 20:31:26 UTC
Yes, sorry that wasn't clear.  I uploaded my current configuration, the previous one had:

CONFIG_KERNEL_BZIP2=y

and:

# CONFIG_KERNEL_XZ is not set
Comment 9 Scott McClung 2023-01-24 16:45:04 UTC
Created attachment 849149 [details]
Working bzip2 configuration with app-arch/bzip2

Performed another test.  With the reference implementation of bzip2, and this kernel configuration I'm attaching, I was able to get 5.15.88 booted without issue.

If I switch the bzip2 implementation to lbzip2, and recompile the kernel, the boot fails early.   I have not yet tried pbzip2, but that may be my next test.  I haven't yet compared the compressed data, or examined the kernel decompression routine to see if I can determine the cause.
Comment 10 Scott McClung 2023-01-27 04:52:29 UTC
Using pbzip2 as the default bzip2 also fails, although it may be even earlier in the boot process.