#1087226 System freeze during Xorg startup with i915 and modeset

#1087226#5
Date:
2024-11-09 23:10:11 UTC
From:
To:
Hello,

I'm experiencing a black screen and system freeze when Xorg starts on
Debian Trixie on a HP Compaq DC7800 Small Form Factor computer. No SSH,
no ping, no VT switching, no sysrq.

# grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Debian GNU/Linux trixie/sid"
# uname -a
Linux xxberrys 6.11.5-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.11.5-1
(2024-10-27) x86_64 GNU/Linux
# lspci -vvvs 00:02
00:02.0 VGA compatible controller: Intel Corporation 82Q35 Express
Integrated Graphics Controller (rev 02) (prog-if 00 [VGA controller])
         Subsystem: Hewlett-Packard Company Device 2818
         Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop-
ParErr- Stepping- SERR- FastB2B- DisINTx-
         Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
         Latency: 0
         Interrupt: pin A routed to IRQ 5
         IOMMU group: 1
         Region 0: Memory at f0100000 (32-bit, non-prefetchable) [size=512K]
         Region 1: I/O ports at 1230 [size=8]
         Region 2: Memory at e0000000 (32-bit, prefetchable) [size=256M]
         Region 3: Memory at f0000000 (32-bit, non-prefetchable) [size=1M]
         Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
         Capabilities: [90] MSI: Enable- Count=1/1 Maskable- 64bit-
                 Address: 00000000  Data: 0000
         Capabilities: [d0] Power Management version 2
                 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                 Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
         Kernel modules: i915

Please find the output from a serial console in the serial_log.txt file
attached.

The bug was also present in Debian 12 (during early spring this year).
In both cases the system does not freeze when booting with the nomodeset
kernel parameter, but this results in VESA Mode 0x112 (640x480) for Xorg
by default.

I tried to get the kernel to print more debug messages using various
combinations of dyndbg kernel command-line options, but was
unsuccessful. I'm unsure what the correct and accepted dyndbg syntax
would be. Further debugging tips would be most appreciated! :)


Kind regards,
Jaak Ristioja

#1087226#16
Date:
2024-11-21 19:29:03 UTC
From:
To:
Hi Jeak

Please update your firmware.  You can find a firmware from 2015(!), aka
eight years newer.

There are a lot of stalls in various places shown in the log and weird
timeouts.  All those things scream "broken firmware".

But maybe this now 17 year old system is better destined in a museum
than in practical use and you can find something more modern.

Bastian

#1087226#21
Date:
2024-11-22 22:04:46 UTC
From:
To:
Hi Bastian

Upgraded, but still freezes just the same.

The stalls and timeouts are due to the serial console blocking. If I
disable the serial console, those are gone, but I wouldn't have been
able to get a the log.

I'm thinking of bisecting this. Any ideas where I could find a set of
suitable pre-built kernels to speed things up?


Jaak

#1087226#26
Date:
2024-11-23 09:12:50 UTC
From:
To:
Hi Jaak

There is snapshot.debian.org, which stores old versions of packages.  It
might miss some, but it is still a useful starting point:

https://snapshot.debian.org/package/linux/

Bastian

#1087226#31
Date:
2024-11-23 10:18:14 UTC
From:
To:
Yes, thank you! After some testing, and it appers that the modesetting
regression was introduced somewhere between these two kernels:

   linux-image-5.0.0-trunk-amd64_5.0.2-1~exp1_amd64.deb
   linux-image-5.2.0-0.bpo.2-amd64_5.2.9-2~bpo10+1_amd64.deb

A quick look at the changes between debian/5.0.2-1_exp1 and
debian/5.2.9-2_bpo10+1 in [1] revealed some IOMMU related changes,
notably bug #935270 [2]. I have verified the workaround for this bug is
to use intel_iommu=igfx_off as a kernel parameter, works at least with
the following kernels:

   linux-image-5.2.0-0.bpo.2-amd64_5.2.9-2~bpo10+1_amd64.deb
   linux-image-6.11.7-amd64_6.11.7-1_amd64.deb
   linux-image-6.12-rc6-amd64_6.12~rc6-1~exp1_amd64.deb


Jaak

[1]: https://salsa.debian.org/kernel-team/linux.git
[2]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=935270