Bug 76770 - [I830M] KMS sets garbage video mode
Summary: [I830M] KMS sets garbage video mode
Status: CLOSED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Intel GFX Bugs mailing list
QA Contact: Intel GFX Bugs mailing list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-29 08:18 UTC by Meelis Roos
Modified: 2017-07-24 22:55 UTC (History)
3 users (show)

See Also:
i915 platform: I830
i915 features: display/Other


Attachments
dmesg (36.94 KB, text/plain)
2014-03-29 08:18 UTC, Meelis Roos
no flags Details
lspci (10.44 KB, text/plain)
2014-03-29 08:19 UTC, Meelis Roos
no flags Details
.config (59.92 KB, text/plain)
2014-03-29 08:19 UTC, Meelis Roos
no flags Details
bisect log 1 (2.85 KB, text/plain)
2014-03-29 08:19 UTC, Meelis Roos
no flags Details
bisect log 2 (2.17 KB, text/plain)
2014-03-29 08:20 UTC, Meelis Roos
no flags Details
Screenshot (524.09 KB, image/jpeg)
2014-03-29 19:44 UTC, Meelis Roos
no flags Details
Dump before X with distortion (9.88 KB, text/plain)
2014-03-30 16:32 UTC, Meelis Roos
no flags Details
dump after starting X and switching to VT1 (works) (9.87 KB, text/plain)
2014-03-30 16:33 UTC, Meelis Roos
no flags Details
Dump while running X (working) (10.17 KB, text/plain)
2014-03-30 16:33 UTC, Meelis Roos
no flags Details

Description Meelis Roos 2014-03-29 08:18:38 UTC
Created attachment 96579 [details]
dmesg

Somewhere after 3.12, KMS has started to set garbage video mode with too large letters and vertical offset on Thinkpad X30 with Intel 830M graphics. 3.14-rc8 is still problematic.

Bisecting is tricky - it seems the bug only happens with some kernels but not others from the buggy range. I did 2 bisections, one from 3.13 to 3.12 and one from first known-bad commits to 3.12 with lastest gcc 4.8 from Debian unstable. These lead me to differnet results that both reside in lustre commits, but lustre is not compiled for this laptop at all.

Same kernel that exhibits the bug seems to exhibit it always.

When X starts, it sets normal graphics mode and works with no problems.

Attached are dmesg with drm.debug=0x0e, lspci -vvv, config and 2 bisection logs.
Comment 1 Meelis Roos 2014-03-29 08:19:18 UTC
Created attachment 96580 [details]
lspci
Comment 2 Meelis Roos 2014-03-29 08:19:40 UTC
Created attachment 96581 [details]
.config
Comment 3 Meelis Roos 2014-03-29 08:19:58 UTC
Created attachment 96582 [details]
bisect log 1
Comment 4 Meelis Roos 2014-03-29 08:20:16 UTC
Created attachment 96583 [details]
bisect log 2
Comment 5 Chris Wilson 2014-03-29 11:09:18 UTC
Ville, you have a 830 right? I was going to check my 845g next week anyway, so I'll see if have something similar.

Meelis, can you grab a photo of the distortion? It might help identify, if for example, it was an incorrect double-wide config.
Comment 6 Chris Wilson 2014-03-29 11:14:11 UTC
Did you try restricting the bisect to drivers/gpu/drm/i915? Since it is a modesetting bug, it is likely to be there.
Comment 7 Chris Wilson 2014-03-29 11:14:32 UTC
i.e. git bisect start -- drivers/gpu/drm/i915
Comment 8 Meelis Roos 2014-03-29 19:44:31 UTC
Created attachment 96599 [details]
Screenshot
Comment 9 Meelis Roos 2014-03-29 19:45:21 UTC
Oops, forgot to attach the screenshot, now attached.

Will try restricted bisect.
Comment 10 Meelis Roos 2014-03-30 06:07:47 UTC
Bisect restricted to this path did not lead to an answer either:

git bisect start '--' 'drivers//gpu/i915'
# good: [5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52] Linux 3.12
git bisect good 5e01dc7b26d9f24f39abace5da98ccbd6a5ceb52
# bad: [2c0514ee8a4a02650310eaffb378dd1fd08a7bb1] staging:lustre: Replace max() with max_t()
git bisect bad 2c0514ee8a4a02650310eaffb378dd1fd08a7bb1
# good: [31d141e3a666269a3b6fcccddb0351caf7454240] Linux 3.12-rc6
git bisect good 31d141e3a666269a3b6fcccddb0351caf7454240

And this last git bisect good told me
No testable commit found.
Maybe you started with bad path parameters?

So how else could I track this?
Comment 11 Chris Wilson 2014-03-30 15:15:29 UTC
External merge commit? Odd.

Lets do the basics and grab intel_reg_dumper before and after starting X.
Comment 12 Meelis Roos 2014-03-30 16:32:17 UTC
Created attachment 96619 [details]
Dump before X with distortion
Comment 13 Meelis Roos 2014-03-30 16:33:00 UTC
Created attachment 96620 [details]
dump after starting X and switching to VT1 (works)
Comment 14 Meelis Roos 2014-03-30 16:33:22 UTC
Created attachment 96621 [details]
Dump while running X (working)
Comment 15 Meelis Roos 2014-03-30 16:34:10 UTC
Added 3 dumps - before X with distortion, after starting X and back to VT1 (no distortion) and while running X with no VT switch (working).
Comment 16 Chris Wilson 2014-03-30 18:01:22 UTC
Initial fbcon is running at 8-bpp indexed pixel format, X switches to x888 xRGB format.

This should be something to do with the pipeconfig reconstruction and inheritance from BIOS.
Comment 17 Cezary Śliwa 2014-06-24 13:10:50 UTC
I observe exactly the same behavior with Slackware 14.1 (AFAIR kernel 3.10.7) on Fujitsu Lifebook S-6010. In my case setting the video mode triggers messages related to dpms, pins and connectors, whatever those are. Compiling kernel 3.15.1 and messing with configuration settings does not seem to change anything.
Comment 18 Ander Conselvan de Oliveira 2015-05-06 13:07:56 UTC
Is this still an issue with a more recent kernel, like 4.0?
Comment 19 Humberto Israel Perez Rodriguez 2015-08-10 21:33:06 UTC
Hi @Meelis Roos could you provide information to last comment
Comment 20 Meelis Roos 2015-08-12 17:26:38 UTC
Just tested 4.2.0-rc6+git and the problem is gone - KMS works on this 
X30.
Comment 21 Ville Syrjala 2016-01-19 18:42:08 UTC
(In reply to Meelis Roos from comment #20)
> Just tested 4.2.0-rc6+git and the problem is gone - KMS works on this 
> X30.

Marking as fixed.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.