[PATCH] drm/fb-helper: delay hotplug handling when partially bound
Dave Airlie
airlied at gmail.com
Thu Jul 19 18:16:23 PDT 2012
On Thu, Jul 19, 2012 at 1:52 AM, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Fri, Jun 15, 2012 at 10:32:20AM +0100, Chris Wilson wrote:
>> On Fri, 15 Jun 2012 11:01:22 +0200, Daniel Vetter <daniel.vetter at ffwll.ch> wrote:
>> > Ok, this requires quite a dance to actually hit:
>> > 1) We plug in a 2nd screen, enable it in both X and (by vt-switching)
>> > in the fbcon.
>> > 2) We disable that screen again in with xrandr.
>> > 3) We vt-switch again, so that fbcon displays on the 2nd screen, but X
>> > on the first screen. This obviously needs a driver that doesn't switch
>> > off unused functions when regaining the VT.
>> > 3) When X controls the vt, we unplug that screen.
>> >
>> > Now drm_fb_helper_hotplug_event we noticed that that some crtcs are
>> > bound, but because we still have the fbcon on the 2nd screeen we also
>> > have bound set. Which means the fbcon wrongly assumes it's in control
>> > of everything an happily disables the output on the 2nd screen, but
>> > enables its fb on the first screen.
>> >
>> > Work around this issue by counting how many crtcs are bound and how
>> > many are bound to fbcon and assuming that when fbcon isn't bound to
>> > all of them, it better not touch the output configuration.
>> >
>> > Conceptually this is the same as only restoring the fbcon output
>> > configuration on the driver's ->lastclose, when we're sure that no one
>> > else is using kms. So this should be consistent with existing kms
>> > drivers.
>> >
>> > Chris has created a separate patch for the intel ddx, but I think we
>> > should fix this issue here regardless - the fbcon messing with the
>> > output config while it's not fully in control simply isn't a too
>> > polite behaviour.
>> >
>> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=50772
>> > Tested-by: Maxim A. Nikulin <M.A.Nikulin at gmail.com>
>> > Signed-Off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
>> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
>
> Hi Dave,
>
> This one here fixes a bug where fbcon clobbers outputs even though a real
> drm client is still displaying things. Please include for 3.6.
>
Okay merged to -next.
Dave.
More information about the dri-devel
mailing list