You are not logged in.
Hi,
I noticed the error message Write error : cannot write block : Broken pipe every time the initramfs is created. It always happens after the kms hook:
# mkinitcpio -P
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
==> Using default configuration file: '/etc/mkinitcpio.conf'
-> -k /boot/vmlinuz-linux -g /boot/initramfs-linux.img
==> Starting build: '6.13.4-arch1-1'
-> Running build hook: [plymouth]
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [microcode]
-> Running build hook: [modconf]
-> Running build hook: [kms]
zstd: error 70 : Write error : cannot write block : Broken pipe
-> Running build hook: [keyboard]
-> Running build hook: [keymap]
-> Running build hook: [consolefont]
-> Running build hook: [block]
-> Running build hook: [filesystems]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: '/boot/initramfs-linux.img'
-> Early uncompressed CPIO image generation successful
==> Initcpio image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
==> Using default configuration file: '/etc/mkinitcpio.conf'
-> -k /boot/vmlinuz-linux -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: '6.13.4-arch1-1'
-> Running build hook: [plymouth]
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [microcode]
-> Running build hook: [modconf]
-> Running build hook: [kms]
zstd: error 70 : Write error : cannot write block : Broken pipe
-> Running build hook: [keyboard]
-> Running build hook: [keymap]
-> Running build hook: [consolefont]
-> Running build hook: [block]
-> Running build hook: [filesystems]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating zstd-compressed initcpio image: '/boot/initramfs-linux-fallback.img'
-> Early uncompressed CPIO image generation successful
==> Initcpio image generation successfulWhen running with --verbose then the relevant part looks like this:
# mkinitcpio -P --verbose
...
-> Running build hook: [/usr/lib/initcpio/install/kms]
...
overwriting file: /usr/lib/firmware/nvidia/ga102/sec2/image.bin.zst
adding symlink: /usr/lib/firmware/nvidia/ga103/sec2/image.bin.zst -> /usr/lib/firmware/nvidia/ga102/sec2/image.bin.zst
overwriting file: /usr/lib/firmware/nvidia/ga102/sec2/desc.bin.zst
adding symlink: /usr/lib/firmware/nvidia/ga103/sec2/desc.bin.zst -> /usr/lib/firmware/nvidia/ga102/sec2/desc.bin.zst
zstd: error 70 : Write error : cannot write block : Broken pipe
-> Running build hook: [/usr/lib/initcpio/install/keyboard]
adding module: usbhid (/lib/modules/6.13.4-arch1-1/kernel/drivers/hid/usbhid/usbhid.ko.zst)
adding module: hid-generic (/lib/modules/6.13.4-arch1-1/kernel/drivers/hid/hid-generic.ko.zst)
...What is going wrong here? How can I fix this?
Last edited by Kayahr (2025-02-23 12:54:02)
Offline
According to https://github.com/korvahannu/arch-nvid … tion-guide I should remove the kms hook when using nvidia. https://wiki.archlinux.org/title/Kernel_mode_setting says that kms hook is for in-tree modules while for out-tree modules like nvidia I have to specify modules instead (which I have). So I removed the kms hook, the error message is gone and system still boots correctly. So I guess this was the right fix.
Offline