Bug 17151 - i915: 2.6.36-rc2 hoses my Intel display
Summary: i915: 2.6.36-rc2 hoses my Intel display
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel) (show other bugs)
Hardware: All Linux
: P1 normal
Assignee: drivers_video-dri-intel@kernel-bugs.osdl.org
Depends on:
Blocks: 16444
  Show dependency tree
Reported: 2010-08-26 19:11 UTC by Maciej Rutecki
Modified: 2010-09-12 18:06 UTC (History)
7 users (show)

See Also:
Kernel Version: 2.6.36-rc2
Tree: Mainline
Regression: Yes

that's a preliminary patch, I'm not sure all changes are needed (2.46 KB, patch)
2010-09-01 00:46 UTC, Pavel Roskin
Details | Diff
minimal patch (1.71 KB, patch)
2010-09-01 21:30 UTC, Pavel Roskin
Details | Diff

Description Maciej Rutecki 2010-08-26 19:11:36 UTC
Subject    : i915: 2.6.36-rc2 hoses my Intel display
Submitter  : Jonathan Corbet <corbet@lwn.net>
Date       : 2010-08-23 17:01
Message-ID : 20100823110145.08eb72fd@bike.lwn.net
References : http://marc.info/?l=linux-kernel&m=128258293327326&w=2
Handled-By : Chris Wilson <chris@chris-wilson.co.uk>

This entry is being used for tracking a regression from 2.6.35. Please don't
close it until the problem is fixed in the mainline.

Caused by:

commit 32aad86fe88e7323d4fc5e9e423abcee0d55a03d
Author: Chris Wilson <chris@chris-wilson.co.uk>
Date:   Wed Aug 4 13:50:25 2010 +0100

    drm/i915/sdvo: Propagate errors from reading/writing control bus.
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: Eric Anholt <eric@anholt.net>

First-Bad-Commit : 32aad86fe88e7323d4fc5e9e423abcee0d55a03d
Comment 1 Rafael J. Wysocki 2010-08-30 20:41:19 UTC
On Monday, August 30, 2010, Jonathan Corbet wrote:
> On Mon, 30 Aug 2010 00:36:36 +0200 (CEST)
> "Rafael J. Wysocki" <rjw@sisk.pl> wrote:
> > The following bug entry is on the current list of known regressions
> > from 2.6.35.  Please verify if it still should be listed and let the
> tracking team
> > know (either way).
> > 
> > 
> > Bug-Entry   : http://bugzilla.kernel.org/show_bug.cgi?id=17151
> Yes, it was still definitely not working as of just a little prior to
> -rc3.
Comment 2 Pavel Roskin 2010-09-01 00:45:09 UTC
I bisected the patch itself, and it looks like some checks in intel_sdvo_mode_set() are excessive.  I'm attaching a preliminary patch that fixes the "blurring".  It applies to 2.6.36-rc3.  I didn't try to minimize changes, but I know that the change for intel_sdvo_set_input_timing() is needed, so it must be failing.
Comment 3 Pavel Roskin 2010-09-01 00:46:42 UTC
Created attachment 28721 [details]
that's a preliminary patch, I'm not sure all changes are needed
Comment 4 Pavel Roskin 2010-09-01 21:23:56 UTC
Following calls are actually failing:

intel_sdvo_set_value() for SDVO_CMD_SET_IN_OUT_MAP

In all cases the status is SDVO_CMD_STATUS_NOTSUPP (not supported).
Comment 5 Pavel Roskin 2010-09-01 21:30:58 UTC
Created attachment 28782 [details]
minimal patch
Comment 6 Chris Wilson 2010-09-02 07:45:34 UTC
Pavel, thank you for digging in and finding the cause. Error handling ftw.

IN_OUT_MAP we can ignore (we can assume a single function device in that case, and since we have a static assignment we could move that to initialisation), but we should be concerned if we cannot set the output timing and handle that error by reporting the mode invalid.
Comment 7 Chris Wilson 2010-09-02 07:51:50 UTC
(In reply to comment #5)
> Created an attachment (id=28782) [details]
> minimal patch

Yes, I think this is the minimal patch, please send it upstream to intel-gfx@ and linux-kernel@

Reported-by: Jonathan Corbet <corbet@lwn.net>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Comment 8 Pavel Roskin 2010-09-02 18:49:11 UTC
I've just sent the patch.

I think silent return on error is always bad, but I leave fixing it to the code maintainers.
Comment 9 Florian Mickler 2010-09-06 06:50:08 UTC
Patch: http://lkml.org/lkml/2010/9/2/315
Comment 10 Rafael J. Wysocki 2010-09-12 18:06:41 UTC
Fixed by commit c74696b9c890074c1e1ee3d7496fc71eb3680ced .

Note You need to log in before you can comment on or make changes to this bug.