Opened 6 years ago

Closed 3 years ago

#14643 closed bug (fixed)

Black screen booting with Intel HD4600

Reported by: humdinger Owned by: pulkomandy
Priority: normal Milestone: R1/beta4
Component: Drivers/Graphics/intel_extreme/haswell Version: R1/beta2
Keywords: Cc:
Blocked By: Blocking: #11268, #17324
Platform: All

Description (last modified by humdinger)

Used to work before that intel_extreme update some time ago.

It's a 4th generation Haswell CPU, i7-4712MQ:

device Display controller (VGA compatible controller, VGA controller) [3|0|0]
  vendor 8086: Intel Corporation
  device 0416: 4th Gen Core Processor Integrated Graphics Controller

Edited to add: With the current driver (Beta2) the screen pops on after a while. Sometimes after 1 minute, sometimes after 15.

Attachments (8)

syslog.txt (218.2 KB ) - added by humdinger 5 years ago.
syslog ​for Haswell CPU, ​i7-4712MQ
syslog.1st.usb.boot.keypress (208.4 KB ) - added by humdinger 5 years ago.
1st boot from USB, lights up after keypress (hrev54154_31)
syslog.keypress.old (512.0 KB ) - added by humdinger 5 years ago.
boot from SSD, lights up after keypress, "syslog.old" (hrev54154_31)
syslog.keypress (125.0 KB ) - added by humdinger 5 years ago.
boot from SSD, lights up after keypress (hrev54154_31)
syslog.light (203.8 KB ) - added by humdinger 5 years ago.
boot from SSD, lights up immediately by itself (hrev54154_31)
64bit-ints.jpg (480.1 KB ) - added by humdinger 5 years ago.
KDL "ints" with intel_extreme
64bit-VESA-ints.jpg (448.0 KB ) - added by humdinger 5 years ago.
KDL "ints" with VESA
screen_new_res_black.syslog (3.3 KB ) - added by humdinger 4 years ago.
black screen when changing resolution in Screen prefs

Change History (34)

comment:1 by humdinger, 6 years ago

Same for another Haswell CPU with similar Intel HD4600 chipset, i7-4770S:

device Display controller (VGA compatible controller, VGA controller) [3|0|0]
  vendor 8086: Intel Corporation
  device 0412: Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller

comment:2 by waddlesplash, 6 years ago

Please retest after hrev53040.

comment:3 by humdinger, 6 years ago

No change with hrev53042.

comment:4 by pulkomandy, 5 years ago

A syslog would be nice.

comment:5 by humdinger, 5 years ago

Got a syslog now with hrev53523 for the Haswell CPU, ​i7-4712MQ. Attached.

by humdinger, 5 years ago

Attachment: syslog.txt added

syslog ​for Haswell CPU, ​i7-4712MQ

comment:6 by pulkomandy, 5 years ago

That syslog does not mention the intel_extreme driver at all. Did you blacklist it?

comment:7 by humdinger, 5 years ago

I deleted all files in system/var/logs/, rebooted, got a black screen, powered off, and booted into another Haiku installation to get to the syslog. I found it peculiar that there was only a "previous_syslog" there...
Maybe I messed it up and that wasn't the right syslog from the black-screen-boot... (could be there isn't one, as I wrote in the OT: "No syslog available.")

I'm out of time today, but I'll give it another try tomorrow. Thanks for looking into these intel_extreme issues!

comment:8 by pulkomandy, 5 years ago

It can be, indeed, that the driver somehow freezes the system completely before syslog is written to disk. In that case, we'll need serial debug, but I guess this is a laptop without serial or expresscard port?

comment:9 by humdinger, 5 years ago

Correct on all accounts. I tried to get a syslog once more (this time paying close attention at all times...), but it is indeed not written. No chance on serial debugging...

I'll check the i7-4770S from my 1st comment later.

comment:10 by humdinger, 5 years ago

The i7-4770S mentioned in the first comment is now using the intel_extreme driver. Yay!

On first boot, the bottom 120 pixels are a pixel chaos, because the resolution 1920x1080 was set, but the monitor is actually a 1920x1200 (nice!). That's fixed by setting the correct resolution. I suppose the monitor's EDID is slightly off.

comment:11 by pulkomandy, 5 years ago

It's actually because the intel_extreme driver does not know how to set a video mode. It works only with the mode already set by VESA.

I will look into actually doing modesetting for the modern intel videocards, but I would prefer to fix the regressions first and work from a sane base. There is some progress towards that, at least :)

comment:12 by pulkomandy, 5 years ago

Component: Drivers/Graphics/intel_extremeDrivers/Graphics/intel_extreme/g45
Owner: changed from kallisti5 to pulkomandy

comment:13 by pulkomandy, 5 years ago

Blocking: 11268 added

comment:14 by pulkomandy, 5 years ago

Component: Drivers/Graphics/intel_extreme/g45Drivers/Graphics/intel_extreme/haswell

comment:15 by pulkomandy, 5 years ago

Milestone: UnscheduledR1

comment:16 by humdinger, 5 years ago

I got exciting news: I was testing the pre-RC candidate haiku-r1beta2-hrev54154_31-x86_64-anyboot.iso and it did (eventually) boot using the intel_extreme driver. Adjustable backlight and all!

Weird thing though: Sometimes I get stuck with a black screen. Sometimes it takes close to 20 sec for the screen to appear. Sometimes it seems to come on only after I type around on the keyboard...

I attach a few syslogs.

by humdinger, 5 years ago

1st boot from USB, lights up after keypress (hrev54154_31)

by humdinger, 5 years ago

Attachment: syslog.keypress.old added

boot from SSD, lights up after keypress, "syslog.old" (hrev54154_31)

by humdinger, 5 years ago

Attachment: syslog.keypress added

boot from SSD, lights up after keypress (hrev54154_31)

by humdinger, 5 years ago

Attachment: syslog.light added

boot from SSD, lights up immediately by itself (hrev54154_31)

comment:17 by mmlr, 5 years ago

Sounds like interrupt issues, both the long delay and the progress on typing. The syslog tells that many devices share interrupt 11 (then mapped to GSI 16), including graphics, but the driver says it uses MSIs. Maybe the normal interrupts don't get properly disabled and lead to interrupt storms?

comment:18 by humdinger, 5 years ago

Anything I can do to calm down the wrath of the i-storm? I got a goat tied to a post here, if blood was any help...

comment:19 by mmlr, 5 years ago

Can you get the output of the "ints" KDL command? It should show whether or not there are a lot of unhandled interrupts and if, on what vector.

comment:20 by humdinger, 5 years ago

Attached two "ints" from KDL. One after waiting until the screen lights up (tends to often come up in 800x600x16 instead of the native 1920x1080x32), and one after booting in VESA.

by humdinger, 5 years ago

Attachment: 64bit-ints.jpg added

KDL "ints" with intel_extreme

by humdinger, 5 years ago

Attachment: 64bit-VESA-ints.jpg added

KDL "ints" with VESA

comment:21 by mmlr, 5 years ago

That refutes the interrupt suspicion as a cause, there are no large numbers of unhandled interrupts. Maybe the handled interrupt count on the intel_extreme driver is a bit high, but I don't currently have any reference to compare. Even then, 4k interrupts isn't all that much.

comment:22 by humdinger, 5 years ago

Too bad, we're still in the dark then. I've been living with 100% backlight on this notebook for 5 years now, I'd love to have it adjustable... then I could use Haiku even in the dark. :)
I'll think about just un-blacklisting the driver, even if it means I may have to try several boots if the screen doesn't come on.

Thanks for having a look!

comment:23 by humdinger, 4 years ago

Description: modified (diff)
Version: R1/beta1R1/beta2

comment:24 by humdinger, 4 years ago

I the hopes to shed any more light, I attached what I found in the syslog when changing resolutions in the Screen prefs., which also result in a black screen. -> screen_new_res_black.syslog

by humdinger, 4 years ago

Attachment: screen_new_res_black.syslog added

black screen when changing resolution in Screen prefs

comment:25 by waddlesplash, 3 years ago

Blocking: 17324 added

comment:26 by humdinger, 3 years ago

Milestone: R1R1/beta4
Resolution: fixed
Status: newclosed

I'm thrilled to report that with hrev55608, my black-screen issue is gone! \o/
Thanks, Rudolf!

Note: See TracTickets for help on using tickets.