i915: Display flickers (monitor loses signal briefly) during "flickerfree" boot, while showing the BIOS logo on a black background

Bug #1836858 reported by Daniel van Vugt on 2019-07-17
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Low
Unassigned

Bug Description

I am trying flickerfree boot in 19.10 [1], but find it actually flickers part way through:

  1. BIOS logo on a black background.
  2. Display mode resets, no image on a black background briefly.
  3. BIOS logo on a black background.

The flicker occurs seemingly during kernel startup since my peripherals are lit up before the problem occurs.

Suspecting this might be related to FB handover:

  [ 2.751028] fb0: switching to inteldrmfb from EFI VGA

I tried disabling that with a big hammer:

  i915.modeset=0

so it stays in efifb, and that works -- no more flickering, providing I don't let i915 take over the framebuffer.

[1] https://discourse.ubuntu.com/t/testing-flickerfree-boot/11854

ProblemType: Bug
DistroRelease: Ubuntu 19.10
Package: linux-image-5.2.0-8-generic 5.2.0-8.9
ProcVersionSignature: Ubuntu 5.2.0-8.9-generic 5.2.0
Uname: Linux 5.2.0-8-generic x86_64
ApportVersion: 2.20.11-0ubuntu5
Architecture: amd64
AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/by-path', '/dev/snd/controlC0', '/dev/snd/hwC0D2', '/dev/snd/hwC0D0', '/dev/snd/pcmC0D9p', '/dev/snd/pcmC0D8p', '/dev/snd/pcmC0D7p', '/dev/snd/pcmC0D3p', '/dev/snd/pcmC0D2c', '/dev/snd/pcmC0D0c', '/dev/snd/pcmC0D0p', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1:
Date: Wed Jul 17 16:34:36 2019
InstallationDate: Installed on 2019-05-02 (76 days ago)
InstallationMedia: Ubuntu 19.10 "Eoan EANIMAL" - Alpha amd64 (20190501)
MachineType: LENOVO 10M7CTO1WW
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-5.2.0-8-generic root=UUID=9bfb5f01-bdd4-4854-bfce-1c28e2f2f3bc ro quiet splash i915.fastboot=1 vt.handoff=7
PulseList: Error: command ['pacmd', 'list'] failed with exit code 1: No PulseAudio daemon running, or not running as session daemon.
RelatedPackageVersions:
 linux-restricted-modules-5.2.0-8-generic N/A
 linux-backports-modules-5.2.0-8-generic N/A
 linux-firmware 1.180
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 02/06/2018
dmi.bios.vendor: LENOVO
dmi.bios.version: M16KT47A
dmi.board.name: 3102
dmi.board.vendor: LENOVO
dmi.board.version: SDK0J40709 WIN 3259627060530
dmi.chassis.type: 3
dmi.chassis.vendor: LENOVO
dmi.chassis.version: None
dmi.modalias: dmi:bvnLENOVO:bvrM16KT47A:bd02/06/2018:svnLENOVO:pn10M7CTO1WW:pvrThinkCentreM710s:rvnLENOVO:rn3102:rvrSDK0J40709WIN3259627060530:cvnLENOVO:ct3:cvrNone:
dmi.product.family: ThinkCentre M710s
dmi.product.name: 10M7CTO1WW
dmi.product.sku: LENOVO_MT_10M7_BU_Think_FM_ThinkCentre M710s
dmi.product.version: ThinkCentre M710s
dmi.sys.vendor: LENOVO

Daniel van Vugt (vanvugt) wrote :
summary: - i915: Display flickers during boot
+ i915: Display flickers during "flickerfree" boot

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed

I've now found this occurs on an HP laptop, as well as a Lenovo desktop.

summary: - i915: Display flickers during "flickerfree" boot
+ i915: Display flickers during "flickerfree" boot (BIOS logo on a black
+ background)
description: updated

for me, it's flicker-free but it doesn't show the vendor logo, only the spinner appears during boot.

But for the first boot, it worked fine

Sebastien Bacher (seb128) wrote :

I've discussed the issue with Hans who pointed out to that kernel option being needed
FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER

Details on https://lwn.net/Articles/758312/

summary: - i915: Display flickers during "flickerfree" boot (BIOS logo on a black
- background)
+ CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER needed for flickerfree boot

I've built a test kernel with FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER enabled - https://people.canonical.com/~ppisati/lp1836858/

-rw-r--r-- 1 3082 2500 354732 Oct 18 15:12 linux-buildinfo-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 132248 Oct 18 15:12 linux-cloud-tools-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 1306796 Oct 18 15:12 linux-headers-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 8786664 Oct 18 15:13 linux-image-unsigned-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 14207948 Oct 18 15:13 linux-modules-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 38257704 Oct 18 15:13 linux-modules-extra-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb
-rw-r--r-- 1 3082 2500 132344 Oct 18 15:13 linux-tools-5.3.0-19-generic_5.3.0-19.20~lp1836858_amd64.deb

could you test it and report if it fixes your problem?

Daniel van Vugt (vanvugt) wrote :

No that kernel did not fix the bug :(

summary: - CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER needed for flickerfree boot
+ i915: Display flickers during "flickerfree" boot (BIOS logo on a black
+ background)

$ uname -a
Linux kab 5.3.0-19-generic #20~lp1836858 SMP Fri Oct 18 12:09:47 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Daniel van Vugt (vanvugt) wrote :

Also keep in mind that the duration of the flicker here depends on the model of monitor in use.

Some laptops/monitors might be super-fast and not black-out when the programmed mode changes. But in my experience most will. Sometimes quickly and sometimes slowly.

Sebastien Bacher (seb128) wrote :

Daniel, do you still see the 'fb0: switching to inteldrmfb from EFI VGA'? The kernel change is needed from what upstream said even if it might not be enoguh for your problem so I think it should still be a step in the right direction and we should enable the option

Daniel van Vugt (vanvugt) wrote :

Seb,

Yes I do see it but it's different now...

$ uname -a
Linux kab 5.3.0-19-generic #20~lp1836858 SMP Fri Oct 18 12:09:47 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
$ dmesg | grep fb
...
[ 0.395596] efifb: probing for efifb
[ 0.395604] efifb: showing boot graphics
[ 0.396347] efifb: framebuffer at 0xe0000000, using 9024k, total 9024k
[ 0.396347] efifb: mode is 1920x1200x32, linelength=7680, pages=1
[ 0.396348] efifb: scrolling: redraw
[ 0.396349] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[ 0.396371] fbcon: Deferring console take-over
[ 0.396372] fb0: EFI VGA frame buffer device
[ 1.860776] fbcon: Taking over console
[ 2.540276] fb0: switching to inteldrmfb from EFI VGA
[ 2.852694] fbcon: i915drmfb (fb0) is primary device
[ 2.852753] i915 0000:00:02.0: fb0: i915drmfb frame buffer device

I think you're right. It sounds like a step in the right direction.

Sebastien Bacher (seb128) wrote :

@Paolo, I think from a desktop perspective we do validate the enabling of the option (even if that's not enough to fix the bug here) so please move forward with that if you can

Daniel van Vugt (vanvugt) wrote :

Oh actually I just noticed that test kernel doesn't change or defer the time at which I see:

  fb0: switching to inteldrmfb from EFI VGA

It's still around 2.5s regardless, even with the eoan kernel.

summary: - i915: Display flickers during "flickerfree" boot (BIOS logo on a black
- background)
+ i915: Display flickers (monitor loses signal briefly) during
+ "flickerfree" boot, while showing the BIOS logo on a black background
Stefan Bader (smb) on 2019-11-28
Changed in linux (Ubuntu Eoan):
importance: Undecided → Low
Changed in linux (Ubuntu Eoan):
status: New → Fix Committed

This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-eoan' to 'verification-done-eoan'. If the problem still exists, change the tag 'verification-needed-eoan' to 'verification-failed-eoan'.

If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.

See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-eoan
Daniel van Vugt (vanvugt) wrote :

If that's the same fix as discussed above then there are three problems:

1. It's not a fix for this bug. It should not be linked to this bug.

2. It's been proposed to eoan without going to focal first.

3. I no longer have any eoan systems handy to test it. That can be remedied easily but see 1 and 2.

Launchpad Janitor (janitor) wrote :
Download full text (27.4 KiB)

This bug was fixed in the package linux - 5.3.0-26.28

---------------
linux (5.3.0-26.28) eoan; urgency=medium

  * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807)

  * nvidia-435 is in eoan, linux-restricted-modules only builds against 430,
    ubiquity gives me the self-signed modules experience instead of using the
    Canonical-signed modules (LP: #1856407)
    - Add nvidia-435 dkms build

linux (5.3.0-25.27) eoan; urgency=medium

  * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762)

  * CVE-2019-14901
    - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()

  * CVE-2019-14896 // CVE-2019-14897
    - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor

  * CVE-2019-14895
    - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie()

  * [CML] New device id's for CMP-H (LP: #1846335)
    - mmc: sdhci-pci: Add another Id for Intel CML
    - i2c: i801: Add support for Intel Comet Lake PCH-H
    - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash
    - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs

  * i915: Display flickers (monitor loses signal briefly) during "flickerfree"
    boot, while showing the BIOS logo on a black background (LP: #1836858)
    - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y

  * Please add patch fixing RK818 ID detection (LP: #1853192)
    - SAUCE: mfd: rk808: Fix RK818 ID template

  * Kernel build log filled with "/bin/bash: line 5: warning: command
    substitution: ignored null byte in input" (LP: #1853843)
    - [Debian] Fix warnings when checking for modules signatures

  * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961)
    - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2

  * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360,
    Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810)
    - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360

  * no HDMI video output since GDM greeter after linux-oem-osp1 version
    5.0.0-1026 (LP: #1852386)
    - drm/i915: Add new CNL PCH ID seen on a CML platform
    - SAUCE: drm/i915: Fix detection for a CMP-V PCH

  * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer
    works on Dell Venue 11 Pro 7140 (LP: #1846539)
    - [Config] Drop snd-sof-intel-bdw build
    - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy
      driver

  * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2
    (LP: #1847451)
    - SAUCE: tools/power turbostat: Add Cometlake support

  * External microphone can't work on some dell machines with the codec alc256
    or alc236 (LP: #1853791)
    - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table
    - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table

  * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection
    (LP: #1853197)
    - xfrm: Fix memleak on xfrm state destroy

  * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660
    - powerpc/64s: support nospectre_v2 cmdline option
    - powerp...

Changed in linux (Ubuntu Eoan):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :
Download full text (8.6 KiB)

This bug was fixed in the package linux - 5.4.0-9.12

---------------
linux (5.4.0-9.12) focal; urgency=medium

  * alsa/hda/realtek: the line-out jack doens't work on a dell AIO
    (LP: #1855999)
    - SAUCE: ALSA: hda/realtek - Line-out jack doesn't work on a Dell AIO

  * scsi: hisi_sas: Check sas_port before using it (LP: #1855952)
    - scsi: hisi_sas: Check sas_port before using it

  * CVE-2019-19078
    - ath10k: fix memory leak

  * cifs: DFS Caching feature causing problems traversing multi-tier DFS setups
    (LP: #1854887)
    - cifs: Fix retrieval of DFS referrals in cifs_mount()

  * Support DPCD aux brightness control (LP: #1856134)
    - SAUCE: drm/i915: Fix eDP DPCD aux max backlight calculations
    - SAUCE: drm/i915: Assume 100% brightness when not in DPCD control mode
    - SAUCE: drm/i915: Fix DPCD register order in intel_dp_aux_enable_backlight()
    - SAUCE: drm/i915: Auto detect DPCD backlight support by default
    - SAUCE: drm/i915: Force DPCD backlight mode on X1 Extreme 2nd Gen 4K AMOLED
      panel
    - USUNTU: SAUCE: drm/i915: Force DPCD backlight mode on Dell Precision 4K sku

  * The system cannot resume from S3 if user unplugs the TB16 during suspend
    state (LP: #1849269)
    - PCI: pciehp: Do not disable interrupt twice on suspend
    - PCI: pciehp: Prevent deadlock on disconnect

  * change kconfig of the soundwire bus driver from y to m (LP: #1855685)
    - [Config]: SOUNDWIRE=m

  * alsa/sof: change to use hda hdmi codec driver to make hdmi audio on the
    docking station work (LP: #1855666)
    - ALSA: hda/hdmi - implement mst_no_extra_pcms flag
    - ASoC: hdac_hda: add support for HDMI/DP as a HDA codec
    - ASoC: Intel: skl-hda-dsp-generic: use snd-hda-codec-hdmi
    - ASoC: Intel: skl-hda-dsp-generic: fix include guard name
    - ASoC: SOF: Intel: add support for snd-hda-codec-hdmi
    - ASoC: Intel: bxt-da7219-max98357a: common hdmi codec support
    - ASoC: Intel: glk_rt5682_max98357a: common hdmi codec support
    - ASoC: intel: sof_rt5682: common hdmi codec support
    - ASoC: Intel: bxt_rt298: common hdmi codec support
    - ASoC: SOF: enable sync_write in hdac_bus
    - [config]: SND_SOC_SOF_HDA_COMMON_HDMI_CODEC=y

  * Fix unusable USB hub on Dell TB16 after S3 (LP: #1855312)
    - SAUCE: USB: core: Make port power cycle a seperate helper function
    - SAUCE: USB: core: Attempt power cycle port when it's in eSS.Disabled state

  * Focal update: v5.4.3 upstream stable release (LP: #1856583)
    - rsi: release skb if rsi_prepare_beacon fails
    - arm64: tegra: Fix 'active-low' warning for Jetson TX1 regulator
    - arm64: tegra: Fix 'active-low' warning for Jetson Xavier regulator
    - perf scripts python: exported-sql-viewer.py: Fix use of TRUE with SQLite
    - sparc64: implement ioremap_uc
    - lp: fix sparc64 LPSETTIMEOUT ioctl
    - time: Zero the upper 32-bits in __kernel_timespec on 32-bit
    - mailbox: tegra: Fix superfluous IRQ error message
    - staging/octeon: Use stubs for MIPS && !CAVIUM_OCTEON_SOC
    - usb: gadget: u_serial: add missing port entry locking
    - serial: 8250-mtk: Use platform_get_irq_optional() for optional irq
    - tty: serial: fsl_lpuart: use the sg ...

Read more...

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Daniel van Vugt (vanvugt) wrote :

Now confirmed that kernel 5.4.0-9.12 does NOT fix this bug, as predicted above.

Changed in linux (Ubuntu):
status: Fix Released → Confirmed
no longer affects: linux (Ubuntu Eoan)
Sebastien Bacher (seb128) wrote :

@Daniel, sorry, I think I created the confusion there by (re)using your bug to request for that kernel option to be enabled, that was needed but doesn't seem enough. The kernel change is right though so thanks kernel team to get that uploaded!

Launchpad Janitor (janitor) wrote :
Download full text (27.4 KiB)

This bug was fixed in the package linux - 5.3.0-26.28

---------------
linux (5.3.0-26.28) eoan; urgency=medium

  * eoan/linux: 5.3.0-26.28 -proposed tracker (LP: #1856807)

  * nvidia-435 is in eoan, linux-restricted-modules only builds against 430,
    ubiquity gives me the self-signed modules experience instead of using the
    Canonical-signed modules (LP: #1856407)
    - Add nvidia-435 dkms build

linux (5.3.0-25.27) eoan; urgency=medium

  * eoan/linux: 5.3.0-25.27 -proposed tracker (LP: #1854762)

  * CVE-2019-14901
    - SAUCE: mwifiex: Fix heap overflow in mmwifiex_process_tdls_action_frame()

  * CVE-2019-14896 // CVE-2019-14897
    - SAUCE: libertas: Fix two buffer overflows at parsing bss descriptor

  * CVE-2019-14895
    - SAUCE: mwifiex: fix possible heap overflow in mwifiex_process_country_ie()

  * [CML] New device id's for CMP-H (LP: #1846335)
    - mmc: sdhci-pci: Add another Id for Intel CML
    - i2c: i801: Add support for Intel Comet Lake PCH-H
    - mtd: spi-nor: intel-spi: Add support for Intel Comet Lake-H SPI serial flash
    - mfd: intel-lpss: Add Intel Comet Lake PCH-H PCI IDs

  * i915: Display flickers (monitor loses signal briefly) during "flickerfree"
    boot, while showing the BIOS logo on a black background (LP: #1836858)
    - [Config] FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y

  * Please add patch fixing RK818 ID detection (LP: #1853192)
    - SAUCE: mfd: rk808: Fix RK818 ID template

  * Kernel build log filled with "/bin/bash: line 5: warning: command
    substitution: ignored null byte in input" (LP: #1853843)
    - [Debian] Fix warnings when checking for modules signatures

  * Lenovo dock MAC Address pass through doesn't work in Ubuntu (LP: #1827961)
    - r8152: Add macpassthru support for ThinkPad Thunderbolt 3 Dock Gen 2

  * Dell XPS 13 9350/9360 headphone audio hiss (LP: #1654448) // [XPS 13 9360,
    Realtek ALC3246, Black Headphone Out, Front] High noise floor (LP: #1845810)
    - ALSA: hda/realtek: Reduce the Headphone static noise on XPS 9350/9360

  * no HDMI video output since GDM greeter after linux-oem-osp1 version
    5.0.0-1026 (LP: #1852386)
    - drm/i915: Add new CNL PCH ID seen on a CML platform
    - SAUCE: drm/i915: Fix detection for a CMP-V PCH

  * [broadwell-rt286, playback] Since Linux 5.2rc2 audio playback no longer
    works on Dell Venue 11 Pro 7140 (LP: #1846539)
    - [Config] Drop snd-sof-intel-bdw build
    - SAUCE: ASoC: SOF: Intel: Broadwell: clarify mutual exclusion with legacy
      driver

  * [CML-S62] Need enable turbostat patch support for Comet lake- S 6+2
    (LP: #1847451)
    - SAUCE: tools/power turbostat: Add Cometlake support

  * External microphone can't work on some dell machines with the codec alc256
    or alc236 (LP: #1853791)
    - SAUCE: ALSA: hda/realtek - Move some alc256 pintbls to fallback table
    - SAUCE: ALSA: hda/realtek - Move some alc236 pintbls to fallback table

  * Memory leak in net/xfrm/xfrm_state.c - 8 pages per ipsec connection
    (LP: #1853197)
    - xfrm: Fix memleak on xfrm state destroy

  * CVE-2019-18660: patches for Ubuntu (LP: #1853142) // CVE-2019-18660
    - powerpc/64s: support nospectre_v2 cmdline option
    - powerp...

Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Daniel van Vugt (vanvugt) wrote :

Verification failed, but just because we linked to this bug ID erroneously. There is no problem with the kernel update, but please stop marking this bug as fixed.

Changed in linux (Ubuntu):
status: Fix Released → Confirmed
tags: added: verification-failed
removed: verification-needed-eoan
tags: removed: verification-failed
Esokrates (esokrarkose) wrote :

@vanvugt No flickering for me on an XPS 13 9360 apart from the brightness getting adjusted at the same time the spinner starts. When the brightness is set to maximum before rebooting I don't notice anything apart from the spinner appearing. In a perfect world the brightness would be adjusted gradually or when gdm appears.

Is it on purpose that no ubuntu logo is shown anywhere?

Daniel van Vugt (vanvugt) wrote :

Yes, laptops don't experience this problem as much. Some not at all. You're lucky.

The lack of Ubuntu logo will be a question for design if and when the flicker-free option is ever enabled.

Esokrates (esokrarkose) wrote :

@vanvugt: Also tested Focal on the XPS 13 9360 now, it's flickering there. So the issue is fixed in Eoan but not in Focal. Could you push the fix to Focal too?

tags: added: focal
removed: eoan
Daniel van Vugt (vanvugt) wrote :

There is no "fix" for this bug. You need to ignore the previous messages.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers