rootfs is zfs on luks, which used to work without any issues in the past. Automatic generation of config fails locally due to: # grub-mkconfig -o /boot/grub/grub.cfg /usr/sbin/grub-probe: error: cannot find a device for / (is /dev mounted?). more verbosely, # grub-probe -v / grub-probe: info: cannot open `/boot/grub/device.map': No such file or directory. grub-probe: info: changing current directory to /dev. grub-probe: info: changing current directory to serial. grub-probe: info: changing current directory to by-id. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to cpu. grub-probe: info: changing current directory to 3. grub-probe: info: changing current directory to 2. grub-probe: info: changing current directory to 1. grub-probe: info: changing current directory to 0. grub-probe: info: changing current directory to dri. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to v4l. grub-probe: info: changing current directory to by-id. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to snd. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to vfio. grub-probe: info: changing current directory to net. grub-probe: info: changing current directory to mqueue. grub-probe: info: changing current directory to mapper. grub-probe: info: changing current directory to disk. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to by-diskseq. grub-probe: info: changing current directory to by-partlabel. grub-probe: info: changing current directory to by-label. grub-probe: info: changing current directory to by-uuid. grub-probe: info: changing current directory to by-partuuid. grub-probe: info: changing current directory to by-id. grub-probe: info: changing current directory to block. grub-probe: info: changing current directory to bus. grub-probe: info: changing current directory to usb. grub-probe: info: changing current directory to 002. grub-probe: info: changing current directory to 001. grub-probe: info: changing current directory to char. grub-probe: info: changing current directory to shm. grub-probe: info: changing current directory to pts. grub-probe: info: changing current directory to input. grub-probe: info: changing current directory to by-path. grub-probe: info: changing current directory to dma_heap. grub-probe: error: cannot find a device for / (is /dev mounted?). Portage 3.0.52 (python 3.11.6-final-0, default/linux/amd64/17.1, gcc-13, glibc-2.38-r5, 6.5.5-gentoo-x86_64 x86_64) ================================================================= System uname: Linux-6.5.5-gentoo-x86_64-x86_64-Intel-R-_Core-TM-_i5-7300U_CPU_@_2.60GHz-with-glibc2.38 KiB Mem: 16254408 total, 1307756 free KiB Swap: 0 total, 0 free Timestamp of repository gentoo: Wed, 04 Oct 2023 10:00:01 +0000 Head commit of repository gentoo: 6b76c8bb320ace22a2121ecbc6de849e2bd20583 sh bash 5.2_p15-r6 ld GNU ld (Gentoo 2.40 p5) 2.40.0 app-misc/pax-utils: 1.3.7::gentoo app-shells/bash: 5.2_p15-r6::gentoo dev-java/java-config: 2.3.1-r1::gentoo dev-lang/perl: 5.38.0-r1::gentoo dev-lang/python: 3.10.11::gentoo, 3.11.6::gentoo, 3.12.0_rc2_p1::gentoo dev-lang/rust: 1.72.0-r1::gentoo dev-util/cmake: 3.27.4::gentoo dev-util/meson: 1.2.1-r1::gentoo sys-apps/baselayout: 2.14::gentoo sys-apps/openrc: 0.50-r1::gentoo sys-apps/sandbox: 2.38::gentoo sys-devel/autoconf: 2.13-r8::gentoo, 2.71-r7::gentoo sys-devel/automake: 1.16.5-r1::gentoo sys-devel/binutils: 2.40-r6::gentoo, 2.41-r2::gentoo sys-devel/binutils-config: 5.5::gentoo sys-devel/clang: 15.0.7-r3::gentoo, 16.0.6::gentoo sys-devel/gcc: 12.2.1_p20230304::gentoo, 13.2.1_p20230826::gentoo sys-devel/gcc-config: 2.11::gentoo sys-devel/libtool: 2.4.7-r1::gentoo sys-devel/lld: 15.0.7::gentoo, 16.0.6::gentoo sys-devel/llvm: 15.0.7-r3::gentoo, 16.0.6::gentoo, 17.0.1::gentoo sys-devel/make: 4.4.1-r1::gentoo sys-kernel/linux-headers: 6.5::gentoo (virtual/os-headers) sys-libs/glibc: 2.38-r5::gentoo Repositories: gentoo location: /var/db/repos/gentoo sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 volatile: False sync-rsync-verify-jobs: 1 sync-rsync-verify-max-age: 24 sync-rsync-verify-metamanifest: yes sync-rsync-extra-opts: ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /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" CXXFLAGS="-O2 -pipe" 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 ebuild-locks fixlafiles getbinpkg ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch 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 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" INSTALL_MASK="/etc/X11/xinit/xinitrc.d/80-dbus /usr/bin/dbus-launch" LANG="C.UTF8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LEX="flex" PKGDIR="/var/cache/binpkgs" PORTAGE_BINHOST="http://192.168.0.1/packages" 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" SHELL="/bin/bash" USE="X acl alsa amd64 bzip2 cli crypt dri fortran gdbm glamor iconv icu ipv6 libtirpc multilib ncurses nls nptl opengl openmp pam pcre readline seccomp split-usr sqlite ssl test-rust truetype unicode vaapi vdpau vulkan xattr zlib" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache 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 fma3 mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" 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" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php8-1" POSTGRES_TARGETS="postgres15" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" RUBY_TARGETS="ruby31" VIDEO_CARDS="intel i965 i915 iris" 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, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, LC_ALL, LD, LFLAGS, LIBTOOL, LINGUAS, MAKE, MAKEFLAGS, MAKEOPTS, NM, OBJCOPY, OBJDUMP, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS
I'm not aware of any change in grub that would cause this. Could be an issue triggered by a change in libzfs, a luks-related library, or the kernel.
Might be worth trying grub-9999 in case the problem has been resolved upstream.