Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Dist Kernel Issue: MSDOS_FS enabled?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
alecStewart1
Apprentice
Apprentice


Joined: 03 Jul 2022
Posts: 178

PostPosted: Sat Feb 22, 2025 9:48 pm    Post subject: Dist Kernel Issue: MSDOS_FS enabled? Reply with quote

Hello, friends!

For a awhile, I stuck with gentoo-kernel-bin to avoid rebuild the kernel for a minute, but I decided to go back just to try.

Weird thing happens, though. Upon going through the savedconfig I had for 6.6.35, updating some things, installing sys-kernel/gentoo-kernel, using dispatch-conf to update the kernel config from savedconfig, re-emerging the kernel with the new kernel config with some changes to harden the kernel and then restarting, I run into some weird stuff.

I reboot just fine, log in, but apparently IWD crashed. Weird, so I try running it manually (executable is in /usr/libexec/):

Code:

DES support not found
No CBC(DES3_EDE) support found, certain TLS connections might fail
The following options are missing in the kernel:
        CONFIG_CRYPTO_USER_API_SKCIPHER
        CONFIG_CRYPTO_ECB
        CONFIG_CRYPTO_CBC
        CONFIG_CRYPTO_DES
The following optimized implementations might be available:
        CONFIG_CRYPTO_DES3_EDE_X86_64


Okay, weird. I didn't mess with any of those in the kernel config when I was editing it. If I grep for those options in the savedconfig kernel config, all of those options are there, all set to either y or m.

Okay, let's look at what's in /usr/src/linux/.config....hm, okay that's all the same, too. Uh...use zgrep on /proc.config.gz?

Code:

/usr/bin/zgrep: line 254: /bin/gzip: Permission denied
/usr/bin/zgrep: line 269: /bin/grep: Permission denied


What? Okay, do I need to do it as root? Nope, same permission denied messages.

Uh, okay, I guess look at the config file in /efi/EFI/Gentoo?

Oh, uh, the vfat filesystem type isn't known? Now it's getting weirder.

I find this post:

https://forums.gentoo.org/viewtopic-t-714737.html

And see the following reply:

djinnZ wrote:
verify if you have not the old fat (CONFIG_MSDOS_FS=y) support enabled (it tends to prevent the correct recognition of the filesystems) and are you sure than vfat is not present in the /proc/filesystems file (note than you must have CONFIG_FAT=y also)?
Is not normal, the only thing able to break the fat support is a misconfiguration in the codepages.
Have you build the kernel with genkernel? Try to remove the archived configuration and in every case do a make mrproper and reconfigure it from zero.
Just to be clear: if CONFIG_VFAT_FS=y you must have the codepages selected in CONFIG_FAT_DEFAULT_CODEPAGE and CONFIG_FAT_DEFAULT_IOCHARSET builtin, or modular only if CONFIG_VFAT_FS=m or the kernel modules autoload works properly.
By example I have:
Code:
CONFIG_FAT_FS=y
# CONFIG_MSDOS_FS is not set
CONFIG_VFAT_FS=y
CONFIG_FAT_DEFAULT_CODEPAGE=850
CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-15"
and
Code:
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="utf8"
CONFIG_NLS_CODEPAGE_437=m
CONFIG_NLS_CODEPAGE_850=y
CONFIG_NLS_ASCII=m
CONFIG_NLS_ISO8859_1=m
CONFIG_NLS_ISO8859_15=y
CONFIG_NLS_UTF8=y
to prevent mistakes.


Okay, I look at the kernel config I've edited in the /etc/portage/savedconfig/sys-kernel/gentoo-kernel-6.6.74 and see CONFIG_MSDOS_FS=y. That's one thing.
The other thing is CONFIG_VFAT_FS=m and it's not CONFIG_VFAT_FS=y. Likely doesn't matter, but I change it anyway.

I'm currently recompiling the kernel with the changes I've made the kernel config. Now the question is...can I reboot and things will work? If /efi isn't mounted and the vfat filesystem isn't known to the version of the kernel I was actually able to boot and recompile the kernel with, will it just failed at the end?

Do I need to boot into a live USB environment to update and recompile the kernel?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54916
Location: 56N 3W

PostPosted: Sat Feb 22, 2025 9:58 pm    Post subject: Reply with quote

alecStewart1,

You need to be able to install the kernel binary and update grub.cfg.
Neither of those need to be an a VFAT filesystem.. Only grub.efi must be on the ESP (VFAT) and that need not change.
It all depends on your partition/filesystem layout.

You should be able to add VFAT as a module to your running kernel. Then you can modprobe vfat before you use it to mount anything.
No reboot required. However, the kernel and all of its modules must be built with identical versions of gcc.
A missing /boot or /efi filesystem driver can be fixed on the fly.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
alecStewart1
Apprentice
Apprentice


Joined: 03 Jul 2022
Posts: 178

PostPosted: Sat Feb 22, 2025 10:15 pm    Post subject: Reply with quote

NeddySeagoon wrote:
alecStewart1,

You need to be able to install the kernel binary and update grub.cfg.
Neither of those need to be an a VFAT filesystem.. Only grub.efi must be on the ESP (VFAT) and that need not change.
It all depends on your partition/filesystem layout.


I don't use a bootloader. :wink: I use ugrd as well and not dracut, as dracut stopped creating bootable initramfs for me altogether.

NeddySeagoon wrote:
alecStewart1,
You should be able to add VFAT as a module to your running kernel. Then you can modprobe vfat before you use it to mount anything.
No reboot required. However, the kernel and all of its modules must be built with identical versions of gcc.
A missing /boot or /efi filesystem driver can be fixed on the fly.


Ah, of course. I forgot you can enable modules on the fly. I'm kind of curious as to how MSDOS_FS got enabled to my kernel config, as I don't recall adding it.

Well, I already got onto my live USB environment (vfat is in /proc/filesystems after mounting and chrooting into the device that has Gentoo on it) and I'm recompiling the kernel. Good thing for me to remember in the future, though.

I'll report back if the changes to the kernel config worked.
Back to top
View user's profile Send private message
alecStewart1
Apprentice
Apprentice


Joined: 03 Jul 2022
Posts: 178

PostPosted: Sat Feb 22, 2025 11:30 pm    Post subject: Reply with quote

The changes to my kernel config didn't fix things.

I did the following:

Code:

$ modprobe vfat
$ mount -a
$ sync


Tried restarting iwd, it crashed, ran /usr/libexec/iwd -d and got same message about the missing crypto modules as mentioned above.

I'll post my emerge --info and kernel config here in a second.

installkernel USE flags:

efistub ugrd

ugrd version:

2.0.0

sys-kernel/gentoo-kernel USE flags:

debug experimental hardened initramfs modules-compress modules-sign savedconfig strip
Back to top
View user's profile Send private message
alecStewart1
Apprentice
Apprentice


Joined: 03 Jul 2022
Posts: 178

PostPosted: Sat Feb 22, 2025 11:44 pm    Post subject: Reply with quote

Alight, here's some more info.

emerge --info

Code:

Portage 3.0.66.1 (python 3.12.8-final-0, default/linux/amd64/23.0/split-usr/hardened, gcc-14, glibc-2.40-r8, 6.6.74-gentoo-dist x86_64)
=================================================================
System uname: Linux-6.6.74-gentoo-dist-x86_64-12th_Gen_Intel-R-_Core-TM-_i5-12600K-with-glibc2.40
KiB Mem:    32635396 total,  28298752 free
KiB Swap:    8388604 total,   8388604 free
Timestamp of repository CachyOS-kernels: Sat, 22 Feb 2025 07:48:35 +0000
Head commit of repository CachyOS-kernels: a2ff1b44fde2ffdd58714e0d994fd267ab9846dd

Timestamp of repository gentoobr: Fri, 21 Feb 2025 11:18:31 +0000
Head commit of repository gentoobr: 5e5b6111b03f1a2aa85b182c29af562841734d6a

Timestamp of repository wayland-desktop: Fri, 21 Feb 2025 11:18:31 +0000
Head commit of repository wayland-desktop: e2c29e8e1be65af6d9100cdf03f99a968672966f

Timestamp of repository steam-overlay: Fri, 21 Feb 2025 11:18:26 +0000
Head commit of repository steam-overlay: 9be12cf63dfc9317b36e893c96d913f931817b86

Head commit of repository librewolf: 254d9a6a8cc97448461edd81079162087c6ced53

Timestamp of repository guru: Fri, 21 Feb 2025 20:18:30 +0000
Head commit of repository guru: 9ba615ec98fb0b79aa0348d77d30d27ac9f4b8d8

Timestamp of repository gentoo: Sat, 22 Feb 2025 14:23:35 +0000
Head commit of repository gentoo: 7096205036285ca42f2a094c20c5c5a4a5c8551f

Timestamp of repository haskell: Sat, 22 Feb 2025 13:48:33 +0000
Head commit of repository haskell: 3bee268f21a50dc3a6522a2515cb5a4fe3a99482

sh bash 5.2_p37
ld GNU ld (Gentoo 2.43 p3) 2.43.1
app-misc/pax-utils:        1.3.8::gentoo
app-shells/bash:           5.2_p37::gentoo
dev-build/autoconf:        2.72-r1::gentoo
dev-build/automake:        1.16.5-r2::gentoo
dev-build/cmake:           3.30.6::gentoo
dev-build/libtool:         2.5.4::gentoo
dev-build/make:            4.4.1-r100::gentoo
dev-build/meson:           1.7.0::gentoo
dev-lang/perl:             5.40.0-r1::gentoo
dev-lang/python:           3.11.11_p1::gentoo, 3.12.8_p1::gentoo, 3.13.1_p1::gentoo
dev-lang/rust-bin:         1.77.1-r102::gentoo, 1.82.0-r102::gentoo, 1.84.1-r1::gentoo
llvm-core/clang:           18.1.8-r6::gentoo, 19.1.7::gentoo
llvm-core/lld:             18.1.8::gentoo, 19.1.7::gentoo
llvm-core/llvm:            18.1.8-r6::gentoo, 19.1.7::gentoo
sys-apps/baselayout:       2.17::gentoo
sys-apps/openrc:           0.55.1::gentoo
sys-apps/sandbox:          2.39::gentoo
sys-devel/binutils:        2.43-r2::gentoo
sys-devel/binutils-config: 5.5.2::gentoo
sys-devel/gcc:             14.2.1_p20241221::gentoo
sys-devel/gcc-config:      2.12.1::gentoo
sys-kernel/linux-headers:  6.6-r1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.40-r8::gentoo
Repositories:

CachyOS-kernels
    location: /var/db/repos/CachyOS-kernels
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/CachyOS-kernels.git
    masters: gentoo
    volatile: False

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

local-repo
    location: /var/db/repos/local-repo
    masters: gentoo
    priority: 2
    volatile: False

wayland-desktop
    location: /var/db/repos/wayland-desktop
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/wayland-desktop.git
    masters: gentoo
    priority: 6
    volatile: False

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

librewolf
    location: /var/db/repos/librewolf
    sync-type: git
    sync-uri: https://codeberg.org/librewolf/gentoo.git
    masters: gentoo
    priority: 8
    volatile: False

guru
    location: /var/db/repos/guru
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/guru.git
    masters: gentoo
    priority: 9
    volatile: False

gentoo
    location: /var/db/repos/gentoo
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: 10
    volatile: False

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

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
AR="llvm-ar"
CBUILD="x86_64-pc-linux-gnu"
CC="clang"
CFLAGS="-O2 -march=alderlake -pipe -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk -fstack-protector-strong -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CPP="clang-cpp"
CPPFLAGS="-O2 -march=alderlake -pipe -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk -fstack-protector-strong -fomit-frame-pointer"
CXX="clang++"
CXXFLAGS="-O2 -march=alderlake -pipe -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk -fstack-protector-strong -fomit-frame-pointer"
DISTDIR="/var/cache/distfiles"
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 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs binpkg-multi-instance buildpkg-live config-protect-if-modified distlocks downgrade-backup ebuild-locks fixlafiles ipc-sandbox merge-sync merge-wait mount-sandbox multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox pkgdir-index-trusted preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -march=alderlake -pipe -mno-cldemote -mno-kl -mno-sgx -mno-widekl -mshstk -fstack-protector-strong -fomit-frame-pointer"
GENTOO_MIRRORS="https://mirror.csclub.uwaterloo.ca/gentoo-distfiles/ https://ftp.uni-hannover.de/gentoo/ https://mirror.netcologne.de/gentoo/ https://packages.hs-regensburg.de/gentoo-distfiles/ https://www.mirrorservice.org/sites/distfiles.gentoo.org/ https://gentoo.osuosl.org/ https://mirrors.rit.edu/gentoo/"
LANG="en_US.UTF-8"
LD="ld.lld"
LDFLAGS="-fuse-ld=mold -Wl,-O2 -Wl,--sort-common -Wl,--as-needed -Wl,--strip-debug"
LEX="flex"
LINGUAS="en en_US en-US ja ko zh-CN zh-TW"
MAKEOPTS="-j12"
NM="llvm-nm"
OBJCOPY="llvm-objcopy"
OBJDUMP="llvm-objdump"
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="/var/tmp/portage"
RANLIB="llvm-ranlib"
RUSTFLAGS="-C target-cpu=native -C opt-level=3 -C strip=symbols -C embed-bitcode=yes"
SHELL="/bin/bash"
STRIP="llvm-strip"
USE="X a52 aac acl acpi alsa amd64 apparmor audit bluetooth bzip2 caps cet clang crypt cups cxx dbus default-compiler-rt default-lld dga dri drm elogind emacs ffmpeg filecaps fontconfig gdbm gif gstreamer gui hardened iconv jpeg libtirpc llvm llvm-libunwind lto mp3 mp4 mpeg multilib ncurses ogg opengl openmp openrc opus oss pam pcre pic pie pipewire png readline savedconfig screencast seccomp sound split-usr ssl ssp svg syslog test-rust threads truetype udev udisks unicode upower usb vaapi vdpau verify-sig vorbis vtv vulkan wayland wifi xattr xcb xft xml xtpax zlib" ABI_X86="64 32" ADA_TARGET="gcc_14" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_anon authn_dbm authn_file authz_dbm authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir env expires ext_filter file_cache filter headers include info log_config logio mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 ssse3 vpclmulqdq" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax navcom oceanserver oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 tsip tripmate tnt ublox" GRUB_PLATFORMS="efi-64" GUILE_SINGLE_TARGET="3-0" GUILE_TARGETS="3-0" INPUT_DEVICES="libinput" KERNEL="linux" L10N="en en_US en-US ja ko zh-CN zh-TW" LCD_DEVICES="bayrad cfontz glk hd44780 lb216 lcdm001 mtxorb text" LUA_SINGLE_TARGET="luajit" LUA_TARGETS="lua5-4 luajit" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-2" POSTGRES_TARGETS="postgres16" PYTHON_SINGLE_TARGET="python3_12" PYTHON_TARGETS="python3_11 python3_12" QEMU_SOFTMMU_TARGETS="x86_64" QEMU_USER_TARGETS="x86_64" RUBY_TARGETS="ruby31 ruby32" VIDEO_CARDS="amdgpu radeonsi" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipp2p iface geoip fuzzy condition tarpit sysrq proto logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, ARFLAGS, AS, ASFLAGS, CCLD, CONFIG_SHELL, CTARGET, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LC_ALL, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PYTHONPATH, READELF, SIZE, STRINGS, YACC, YFLAGS


diff -Naru /etc/portage/savedconfig/sys-kernel/gentoo-kernel-6.6.74 /usr/src/linux-6.6.74-gentoo-dist/.config

http://dpaste.com/5HVQQ62LF
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 54916
Location: 56N 3W

PostPosted: Sun Feb 23, 2025 11:33 am    Post subject: Reply with quote

alecStewart1,

As you use an EFI stub kernel, that must be installed to the ESP partition.
That mean that your running kernel must be able to write VFAT to install a new kernel.

Your choices are
build VFAT support as a loadable module for your running kernel (if you can).
Use another kernel with VFAT support for the install phase of the new kernel.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum