Original summary: i915 module doesn't autoload on Kaby Lake HD Graphics 630 8086:5912 Summary has been the case at least as far back as kernel 6.12.44, when this 10 was created from cloning 9 on same PC using urpmi to upgrade following the relnotes instructions in 2025-09. 9 remains fine. Because i915 doesn't load, boot messages on tty1 stop at reached target Graphical Interface. The other vttys are normal, so I login, modprobe i915, and sddm starts. November mailing list thread using 6.12.56-desktop-1.mga10: https://ml.mageia.org/l/arc/discuss/2025-11/msg00002.html January mailing list thread using 6.12.63-desktop-1.mga10: https://ml.mageia.org/l/arc/dev/2026-01/msg00036.html Before modprobe i915 on fresh boot: # lsmod | sort | grep -Ei 'i915|Xe|video' video 77824 1 asus_wmi wmi 28672 4 video,asus_wmi,wmi_bmof,mxm_wmi After modprobe i915: # lsmod | sort | grep -Ei 'i915|Xe|video' cec 94208 2 drm_display_helper,i915 drm_buddy 20480 1 i915 drm_display_helper 258048 1 i915 i2c_algo_bit 16384 1 i915 i915 4341760 4 ttm 102400 1 i915 video 77824 2 asus_wmi,i915 wmi 28672 4 video,asus_wmi,wmi_bmof,mxm_wmi # systemd-analyze critical-chain The time when unit became active or started is printed after the "@" character. The time the unit took to start is printed after the "+" character. graphical.target @2.561s └─udisks2.service @2.065s +495ms └─basic.target @2.003s └─mandriva-everytime.service @1.914s +88ms └─local-fs.target @1.910s └─usr-local.mount @1.861s +45ms └─systemd-fsck@dev-disk-by\x2dlabel-pt3p04ulcl.service @1.520s +40ms └─dev-disk-by\x2dlabel-pt3p04ulcl.device @1.501s # /usr/bin/grep -E 'dev/dr\|Xorg.0.' /var/log/Xorg.0.* /var/log/Xorg.0.log:[ 356.210] (--) Log file renamed from "/var/log/Xorg.pid-967.log" to "/var/log/Xorg.0.log" /var/log/Xorg.0.log:[ 356.211] (==) Log file: "/var/log/Xorg.0.log", Time: Tue Jan 6 18:55:46 2026 /var/log/Xorg.0.log:[ 356.212] (II) xfree86: Adding drm device (/dev/dri/card0) /var/log/Xorg.0.log:[ 356.772] (II) modeset(0): using drv /dev/dri/card0 /var/log/Xorg.0.log.old:[ 10.094] (--) Log file renamed from "/var/log/Xorg.pid-822.log" to "/var/log/Xorg.0.log" /var/log/Xorg.0.log.old:[ 10.096] (==) Log file: "/var/log/Xorg.0.log", Time: Tue Jan 6 18:50:00 2026 /var/log/Xorg.0.log.old:[ 10.112] (EE) open /dev/dri/card0: No such file or directory /var/log/Xorg.0.log.old:[ 10.112] (EE) open /dev/dri/card0: No such file or directory /var/log/Xorg.0.log.old:[ 10.112] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. Content in /etc/dracut.conf.d/ is unchanged from working in 9: # cat /etc/dracut.conf.d/*.conf persistent_policy="by-label" #add_drivers+=" ata_piix ata_generic raid1 md_mod " #add_drivers+=" i915 nvme nvme_core " #add_drivers+=" nvme nvme_core " compress="xz" hostonly="yes" #hostonly_cmdline="yes" #mdadmconf="yes" omit_drivers+=" btrfs crypto dmraid encryptfs i18n iscsi lvm lvm2 plymouth raid1 md_mod resume sata_sil uefi-lib usb_storage watchdog " omit_dracutmodules+=" resume " # In mga9, i915 loads automatically, but not in 10, so X doesn't start. Following is from after modprobe i915: # inxi -CMz Machine: Type: Desktop Mobo: ASUSTeK model: PRIME B250M-C v: Rev X.0x serial: <filter> Firmware: UEFI vendor: American Megatrends v: 1608 date: 10/21/2019 CPU: Info: quad core model: Intel Core i5-7500T bits: 64 type: MCP cache: L2: 1024 KiB Speed (MHz): avg: 800 min/max: 800/3300 cores: 1: 800 2: 800 3: 800 4: 800 # pinxi -GSaz --vs --za --hostname pinxi 3.3.40-01 (2025-11-25) System: Host: ab250 Kernel: 6.12.63-desktop-1.mga10 arch: x86_64 bits: 64 compiler: gcc v: 15.2.0 clocksource: tsc avail: hpet,acpi_pm parameters: BOOT_IMAGE=/boot/vmlinuz root=LABEL=<filter> noresume audit=0 ipv6.disable=1 net.ifnames=0 consoleblank=0 i915.enable_guc=2 preempt=full mitigations=off Desktop: IceWM v: 3.9.0 tools: avail: xlock vt: 7 dm: SDDM Distro: Mageia 10 Graphics: Device-1: Intel HD Graphics 630 vendor: ASUSTeK driver: i915 v: kernel arch: Gen-9.5 process: Intel 14nm built: 2016-20 ports: active: DP-1,HDMI-A-2,HDMI-A-3 empty: DP-2,HDMI-A-1 bus-ID: 00:02.0 chip-ID: 8086:5912 class-ID: 0300 Display: x11 server: X.org v: 1.21.1.21 with: Xwayland v: 24.1.9 driver: X: loaded: modesetting alternate: fbdev,vesa dri: iris gpu: i915 display-ID: :0 screens: 1 Screen-1: 0 s-res: 3600x2640 s-dpi: 120 s-size: 762x558mm (30.00x21.97") s-diag: 944mm (37.18") Monitor-1: DP-1 pos: primary,bottom-l model: Acer K272HUL serial: <filter> built: 2018 res: mode: 2560x1440 hz: 60 scale: 100% (1) dpi: 109 gamma: 1.2 size: 598x336mm (23.54x13.23") diag: 686mm (27") ratio: 16:9 modes: max: 2560x1440 min: 720x400 Monitor-2: HDMI-A-2 mapped: HDMI-2 pos: top-left model: NEC EA243WM serial: <filter> built: 2011 res: mode: 1920x1200 hz: 60 scale: 100% (1) dpi: 94 gamma: 1.2 size: 519x324mm (20.43x12.76") diag: 612mm (24.1") ratio: 16:10 modes: max: 1920x1200 min: 640x480 Monitor-3: HDMI-A-3 mapped: HDMI-3 pos: top-right model: Dell P2213 serial: <filter> built: 2013 res: mode: 1680x1050 hz: 60 scale: 100% (1) dpi: 90 gamma: 1.2 size: 473x296mm (18.62x11.65") diag: 558mm (22") ratio: 16:10 modes: max: 1680x1050 min: 720x400 API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris device: 1 drv: swrast gbm: drv: iris surfaceless: drv: iris x11: drv: iris inactive: wayland API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 25.3.3 glx-v: 1.4 direct-render: yes renderer: Mesa Intel HD Graphics 630 (KBL GT2) device-ID: 8086:5912 memory: 14.95 GiB unified: yes API: Vulkan v: 1.4.335 layers: 5 device: 0 type: integrated-gpu name: Intel HD Graphics 630 (KBL GT2) driver: mesa intel v: 25.3.3 device-ID: 8086:5912 surfaces: N/A device: 1 type: cpu name: llvmpipe (LLVM 20.1.8 256 bits) driver: mesa llvmpipe v: 25.3.3 (LLVM 20.1.8) device-ID: 10005:0000 surfaces: N/A Info: Tools: api: clinfo, eglinfo, glxinfo, vulkaninfo de: kscreen-console,kscreen-doctor x11: xdriinfo, xdpyinfo, xprop, xrandr #
Probably that's a problem of newer dracut-ng (or a "feature") or some race condition, rather than kernel or your particular Kaby Lake chipset, and the Xorg server starts faster than the udev it could trigger the loading of the required module. add_drivers furthermore is commented. You might try to uncomment it (mga9 had a different version of dracut), or force loading earlier with force_drivers+= " i915 ".
CC: (none) => ghibomgx
I note 6.12.37 and 6.18.3-desktop-1.stabletesting.mga10 also suffer this, but 6.6.87-desktop-1.mga9 (using July built initrd) does not. # grep i915 /etc/dracut.conf.d/90-local.conf #add_drivers+=" i915 nvme nvme_core " force_drivers+= " i915 " # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 /etc/dracut.conf.d/90-local.conf: line 17: i915 : command not found dracut[F]: drivers_dir path set via -k/--kmoddir must contain "/lib/modules/" as a parent of your kernel module directory, dracut[F]: or modules may not be placed in the correct location inside the initramfs. dracut[F]: was given: 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: expected: 6.18.3-desktop-1.stabletesting.mga10/lib/modules/6.18.3-desktop-1.stabletesting.mga10 dracut[F]: Please move your modules into the correct directory structure and pass the new location, dracut[F]: or set DRACUT_KMODDIR_OVERRIDE=1 to ignore this check. # export DRACUT_KMODDIR_OVERRIDE=1 # set | grep DRACUT DRACUT_KMODDIR_OVERRIDE=1 _=DRACUT_KMODDIR_OVERRIDE=1 # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 /etc/dracut.conf.d/90-local.conf: line 17: i915 : command not found dracut[F]: Cannot find module directory 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: and --no-kernel was not specified # ...try again # grep i915 /etc/dracut.conf.d/90-local.conf #add_drivers+=" i915 nvme nvme_core " force_drivers+=" i915 " # set | grep DRACUT # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: drivers_dir path set via -k/--kmoddir must contain "/lib/modules/" as a parent of your kernel module directory, dracut[F]: or modules may not be placed in the correct location inside the initramfs. dracut[F]: was given: 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: expected: 6.18.3-desktop-1.stabletesting.mga10/lib/modules/6.18.3-desktop-1.stabletesting.mga10 dracut[F]: Please move your modules into the correct directory structure and pass the new location, dracut[F]: or set DRACUT_KMODDIR_OVERRIDE=1 to ignore this check. # export DRACUT_KMODDIR_OVERRIDE=1 # set | grep DRACUT DRACUT_KMODDIR_OVERRIDE=1 _=DRACUT_KMODDIR_OVERRIDE=1 # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: Cannot find module directory 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: and --no-kernel was not specified # ...try again # grep i915 /etc/dracut.conf.d/90-local.conf #add_drivers+=" i915 nvme nvme_core " add_drivers+=" i915 " #force_drivers+= " i915 " # set | grep DRACUT # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: drivers_dir path set via -k/--kmoddir must contain "/lib/modules/" as a parent of your kernel module directory, dracut[F]: or modules may not be placed in the correct location inside the initramfs. dracut[F]: was given: 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: expected: 6.18.3-desktop-1.stabletesting.mga10/lib/modules/6.18.3-desktop-1.stabletesting.mga10 dracut[F]: Please move your modules into the correct directory structure and pass the new location, dracut[F]: or set DRACUT_KMODDIR_OVERRIDE=1 to ignore this check. # export DRACUT_KMODDIR_OVERRIDE=1 # set | grep DRACUT DRACUT_KMODDIR_OVERRIDE=1 _=DRACUT_KMODDIR_OVERRIDE=1 # dracut --force -k 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: Cannot find module directory 6.18.3-desktop-1.stabletesting.mga10 dracut[F]: and --no-kernel was not specified # ...try again # grep i915 /etc/dracut.conf.d/90-local.conf #add_drivers+=" i915 nvme nvme_core " #add_drivers+=" i915 " force_drivers+=" i915 " # set | grep DRACUT # dracut --force -k /usr/lib/modules/6.18.3-desktop-1.stabletesting.mga10 dracut[E]: Module 'systemd-battery-check' depends on module 'systemd', which can't be installed dracut[E]: Module 'systemd-pcrphase' depends on module 'systemd', which can't be installed dracut[E]: Module 'systemd-udevd' depends on module 'systemd', which can't be installed dracut[E]: Module 'systemd-initrd' depends on module 'systemd-udevd', which can't be installed dracut[E]: Module 'dracut-systemd' depends on module 'systemd-initrd', which can't be installed dracut[E]: Module 'systemd-battery-check' depends on module 'systemd', which can't be installed dracut[E]: Module 'systemd-pcrphase' depends on module 'systemd', which can't be installed # ls -gG /boot/.init*stable* /boot/init*stable* -rw------- 1 21739340 Jan 7 00:59 /boot/initrd-6.18.3-desktop-1.stabletesting.mga10.img -rw------- 1 19756528 Jan 7 00:31 /boot/.initrd-6.18.3-desktop-1.stabletesting.mga10.img1 -rw------- 1 21739340 Jan 7 00:59 /boot/.initrd-6.18.3-desktop-1.stabletesting.mga10.img2 # cd /usr/lib/modules/6.18.3-desktop-1.stabletesting.mga10/kernel/drivers/gpu/drm/i915 # ls -Gg i915* -rw-r--r-- 1 1571764 Jan 4 16:48 i915.ko.xz # <reboot> Successful workaround costing 1,936Kb in 'force_drivers+=" i915 "' (without the extra space copied from comment #1). PC has all following behaving with neither initrd inclusion of i915 nor other dracut fuss: Debian 13 6.12.57 # lsinitramfs initrd | grep -iE 'intel|i915' usr/lib/modules/6.12.57+deb13-amd64/kernel/arch/x86/crypto/crc32c-intel.ko.xz # Debian 14 6.17.13 # lsinitramfs initrd | grep -iE 'intel|i915' # Ubuntu 26 6.17.5 # lsinitramfs initrd | grep -iE 'intel|i915' kernel/x86/microcode/.enuineIntel.align.0123456789abc kernel/x86/microcode/GenuineIntel.bin etc/modprobe.d/intel-microcode-blacklist.conf # Fedora 42 6.12.61 # lsinitrd initrd | grep -iE 'intel|i915' | wc -l 35 # lsinitrd initrd | grep -i i915 # openSUSE TW 6.17.9 # lsinitrd initrd | grep -iE 'intel|i915' | wc -l 40 # lsinitrd initrd | grep -i i915 #
Of course the correct syntax is without the space between add_drivers+= or force_drivers+= and the first quotation mark. Regarding the cases (i.e. older kernels) where it does not happens (at least in mga), what about doing a backup of the july's initramfs and regenerate them under newer utils for older kernels? Because beside newer dracut-ng there was also a new series of systemd. Apparently it seems described here https://github.com/systemd/systemd/issues/25408
CC: (none) => fri
(In reply to Giuseppe Ghibò from comment #3) > what about doing a backup of the july's initramfs and regenerate > them under newer utils for older kernels? # cat /etc/dracut.conf.d/90-local.conf compress="xz" hostonly="yes" omit_dracutmodules+=" resume " omit_drivers+=" btrfs crypto dmraid encryptfs i18n iscsi lvm lvm2 plymouth raid1 md_mod resume sata_sil uefi-lib usb_storage watchdog " ... # dracut --force --kver 6.6.87-desktop-1.mga9 # ls -gG .initrd-6.6.87-desktop-1.mga9.img* -rw------- 1 11192816 Apr 20 2025 .initrd-6.6.87-desktop-1.mga9.img1 -rw------- 1 18615860 Jan 7 09:55 .initrd-6.6.87-desktop-1.mga9.img2 i915 autoloads OK with either ... # dracut --force --kver 6.12.37-desktop-1.mga10 # ls -gG .initrd-6.12.37-desktop-1.mga10.img* -rw------- 1 13811072 Jul 11 15:37 .initrd-6.12.37-desktop-1.mga10.img1 -rw------- 1 19651876 Jan 7 10:02 .initrd-6.12.37-desktop-1.mga10.img2 i915 fails to autoload with either # cat /etc/dracut.conf.d/90-local.conf add_drivers+=" i915 " compress="xz" hostonly="yes" omit_dracutmodules+=" resume " omit_drivers+=" btrfs crypto dmraid encryptfs i18n iscsi lvm lvm2 plymouth raid1 md_mod resume sata_sil uefi-lib usb_storage watchdog " # dracut --force --kver 6.12.37-desktop-1.mga10 ... # lsinitrd /boot/initrd | grep i915 ...Jan 7 10:08 usr/lib/modules/6.12.37-desktop-1.mga10/kernel/drivers/gpu/drm/i915 ...Jul 10 14:07 usr/lib/modules/6.12.37-desktop-1.mga10/kernel/drivers/gpu/drm/i915/i915.ko.xz # ls -gG /boot/initrd-6.12.37-desktop-1.mga10.img -rw------- 1 21343004 Jan 7 10:08 /boot/initrd-6.12.37-desktop-1.mga10.img # systemd-analyze critical-chain ... └─multi-user.target @2.194s ... i915 autoloaded :) # cat /etc/dracut.conf.d/90-local.conf compress="xz" force_drivers+=" i915 " hostonly="yes" omit_drivers+=" btrfs crypto dmraid encryptfs i18n iscsi lvm lvm2 plymouth raid1 md_mod resume sata_sil uefi-lib usb_storage watchdog " omit_dracutmodules+=" resume " # dracut --force --kver 6.12.37-desktop-1.mga10 ... # lsinitrd /boot/initrd | grep i915 ...Jan 7 10:24 usr/lib/modules/6.12.37-desktop-1.mga10/kernel/drivers/gpu/drm/i915 ...Jul 10 14:07 usr/lib/modules/6.12.37-desktop-1.mga10/kernel/drivers/gpu/drm/i915/i915.ko.xz rd.driver.pre=i915 # ls -gG /boot/initrd-6.12.37-desktop-1.mga10.img -rw------- 1 21345580 Jan 7 10:24 /boot/initrd-6.12.37-desktop-1.mga10.img # systemd-analyze critical-chain ... └─multi-user.target @2.408s ... i915 autoloaded, though initrd was bigger than with add_drivers+=" i915 " & reaching multi-user.target took 0.214s longer.
Assignee: bugsquad => kernel