Bugzilla – Bug 1216486
xfsprogs v6.5.0: grub2-install: error: ../grub-core/kern/fs.c:123:unknown filesystem
Last modified: 2023-12-05 21:22:14 UTC
Created attachment 870392 [details] kiwi-templates-Minimal:Cloud New xfsprogs v6.5.0 triggered some problems when building the image kiwi-templates-Minimal:Cloud --- 43s] [ DEBUG ]: 06:04:14 | custom arguments for bootloader installation {'boot_device': '/dev/loop0p3', 'root_device': '/dev/loop0p3', 'write_device': '/dev/loop0p3', 'firmware': <kiwi.firmware.FirmWare object at 0x7fac5d21df90>, 'target_removable': None, 'install_options': [], 'shim_options': [], 'efi_device': '/dev/loop0p2'} [ 43s] [ INFO ]: 06:04:14 | Installing grub2 on disk /dev/loop0 [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mountpoint -q /var/tmp/kiwi_mount_manager.banhn0uz] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mount /dev/loop0p3 /var/tmp/kiwi_mount_manager.banhn0uz] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mountpoint -q /var/tmp/kiwi_mount_manager.banhn0uz/boot/efi] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mount /dev/loop0p2 /var/tmp/kiwi_mount_manager.banhn0uz/boot/efi] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mountpoint -q /var/tmp/kiwi_mount_manager.banhn0uz/dev] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mount -n --bind /dev /var/tmp/kiwi_mount_manager.banhn0uz/dev] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mountpoint -q /var/tmp/kiwi_mount_manager.banhn0uz/proc] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mount -n --bind /proc /var/tmp/kiwi_mount_manager.banhn0uz/proc] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mountpoint -q /var/tmp/kiwi_mount_manager.banhn0uz/sys] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [mount -n --bind /sys /var/tmp/kiwi_mount_manager.banhn0uz/sys] [ 43s] [ DEBUG ]: 06:04:14 | Searching grub file: i386-pc [ 43s] [ DEBUG ]: 06:04:14 | --> /var/tmp/kiwi_mount_manager.banhn0uz/usr/share/grub2/i386-pc [ 43s] [ DEBUG ]: 06:04:14 | --> Found in: /var/tmp/kiwi_mount_manager.banhn0uz/usr/share/grub2/i386-pc [ 43s] [ DEBUG ]: 06:04:14 | EXEC: [chroot /var/tmp/kiwi_mount_manager.banhn0uz grub2-install --skip-fs-probe --directory /usr/share/grub2/i386-pc --boot-directory /boot --target i386-pc --modules ext2 iso9660 linux echo configfile search_label search_fs_file search search_fs_uuid ls normal gzio png fat gettext font minicmd gfxterm gfxmenu all_video xfs btrfs squash4 lvm luks gcry_rijndael gcry_sha256 gcry_sha512 crypto cryptodisk test true loadenv multiboot part_gpt part_msdos biosdisk vga vbe chain boot /dev/loop0] [ 43s] [ DEBUG ]: 06:04:14 | EXEC: Failed with stderr: Installing for i386-pc platform. [ 43s] grub2-install: error: ../grub-core/kern/fs.c:123:unknown filesystem. [ 43s] , stdout: (no output on stdout) [ 43s] [ ERROR ]: 06:04:14 | KiwiCommandError: chroot: stderr: Installing for i386-pc platform. [ 43s] grub2-install: error: ../grub-core/kern/fs.c:123:unknown filesystem. [ 43s] , stdout: (no output on stdout) [ 43s] [ INFO ]: 06:04:14 | Cleaning up BootLoaderInstallGrub2 instance --- Attached is the full log.
Thanks for the report, this is due to xfsprogs commit e5b18d7d1d96 ("mkfs: enable large extent counts by default"), which is not recognizable by the grub fs code. While I cannot reproduce exactly the grub2-install error, grub-mount does indeed complain when an xfs partition has the nrext64 feature switched on: # mkfs.xfs -V mkfs.xfs version 6.5.0 # mkfs.xfs /dev/pmem0 -f meta-data=/dev/pmem0 isize=512 agcount=4, agsize=262144 blks = sectsz=4096 attr=2, projid32bit=1 = crc=1 finobt=1, sparse=1, rmapbt=1 = reflink=1 bigtime=1 inobtcount=1 nrext64=1 data = bsize=4096 blocks=1048576, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0, ftype=1 log =internal log bsize=4096 blocks=16384, version=2 = sectsz=4096 sunit=1 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 # ./grub-mount --version ./grub-mount (GRUB) 2.12~rc1 # ./grub-mount /dev/pmem0 /mnt/tmp/ error: unknown filesystem. # ./grub-mount --debug=all /dev/pmem0 /mnt/tmp/ 2>&1|grep -i xfs grub-core/kern/fs.c:56:fs: Detecting xfs... grub-core/fs/xfs.c:969:xfs: Reading sb grub-core/fs/xfs.c:277:xfs: Validating superblock grub-core/fs/xfs.c:289:xfs: XFS v5 superblock detected grub-core/kern/fs.c:79:fs: error: XFS filesystem has unsupported incompatible features. grub-core/kern/fs.c:80:fs: xfs detection failed. # mkfs.xfs -f -i nrext64=0 /dev/pmem0 # ./grub-mount /dev/pmem0 /mnt/tmp/ # findmnt -T /mnt/tmp TARGET SOURCE FSTYPE OPTIONS /mnt/tmp grub-mount fuse.grub-mount rw,nosuid,nodev,relatime,user_id=0,group_id=0
let's put the xfsprogs on hold for the moment, we'll either have to disable the nrext64 feat by default on mkfs, or submit a patch to grub to enable support for this feat.
I'm resolving this as I've implemented an upstream fix for grub (merged), which has been already backported to the grub2 factory package. I'll resubmit xfsprogs for merging.