lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Thu, 03 Jan 2013 22:45:36 +0000
From:	Chris Wilson <>
To:	Linus Torvalds <>,
	Alexey Zaytsev <>
Cc:	Linux Kernel Mailing List <>,
	Daniel Vetter <>,
	Jesse Barnes <>,
	Rodrigo Vivi <>,
	Peter Ujfalusi <>,
	stable <>
Subject: Re: Linux 3.8-rc2

On Thu, 3 Jan 2013 13:32:04 -0800, Linus Torvalds <> wrote:
> On Thu, Jan 3, 2013 at 1:09 PM, Alexey Zaytsev <> wrote:
> >
> > i915 got broken on my machine (Lenovo ThinkPad SL500) by this -rc. The screen
> > goes blank after loading the module. I've bisected the problem to
> > b0a2658acb5bf9ca86b4aab011b7106de3af0add "drm/i915: don't disable
> > disconnected outputs".
> Hmm. Daniel - should I just revert it, or do you have a patch to
> possibly fix the divide-by-zero error in g4x_compute_wm0() (which may
> involve not getting that deep in the call chain to begin with or
> whatever)? Maybe that fixes the blank screen too without a revert..

The issue appears to be a disagreement between intel_crtc->active, an
attached framebuffer and there not being a valid mode set on the crtc.

It looks like we end up in that situation with further confusion over
intel_crtc->base.enabled vs intel_crtc->active. I suspect the answer is
something like:

diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index a9fb046..5e4b818 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -7940,10 +7940,8 @@ bool intel_set_mode(struct drm_crtc *crtc,
-	for_each_intel_crtc_masked(dev, prepare_pipes, intel_crtc) {
-		if (intel_crtc->base.enabled)
-			dev_priv->display.crtc_disable(&intel_crtc->base);
-	}
+	for_each_intel_crtc_masked(dev, prepare_pipes, intel_crtc)
+		dev_priv->display.crtc_disable(&intel_crtc->base);
 	/* crtc->mode is already used by the ->mode_set callbacks, hence we need
 	 * to set it here already despite that we pass it down the callchain.

However, until that confusion is unravelled, reverting b0a2658ac, seems
the most sensible approach.

Chris Wilson, Intel Open Source Technology Centre
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

Powered by blists - more mailing lists