Message ID | 1448461607-16868-1-git-send-email-tiwai@suse.de (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Nov 25, 2015 at 03:26:47PM +0100, Takashi Iwai wrote: > The commit [cfb23ed622d0: drm/i915: Allow fuzzy matching in > pipe_config_compare, v2] relaxed the way to compare the pipe > configurations, but one new comparison sneaked in there: it added the > strict has_drrs value check. This causes a regression on many > machines, typically HP laptops with a docking port, where the kernel > spews warnings and eventually fails to set the mode properly like: > [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in has_drrs (expected 1, found 0) > ------------[ cut here ]------------ > WARNING: CPU: 0 PID: 79 at drivers/gpu/drm/i915/intel_display.c:12700 intel_modeset_check_state+0x5aa/0x870 [i915]() > pipe state doesn't match! > .... > > This patch just removes the check again for fixing the regression. > > Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=104041 > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92456 > Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=956397 > Fixes: cfb23ed622d0 ('drm/i915: Allow fuzzy matching in pipe_config_compare, v2') > Cc: <stable@vger.kernel.org> # v4.3+ > Reported-and-tested-by: Max Lin <mlin@suse.com> > Signed-off-by: Takashi Iwai <tiwai@suse.de> Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/i915/intel_display.c | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c > index 71860f8680f9..12a2e9d1f633 100644 > --- a/drivers/gpu/drm/i915/intel_display.c > +++ b/drivers/gpu/drm/i915/intel_display.c > @@ -12460,7 +12460,6 @@ intel_pipe_config_compare(struct drm_device *dev, > if (INTEL_INFO(dev)->gen < 8) { > PIPE_CONF_CHECK_M_N(dp_m_n); > > - PIPE_CONF_CHECK_I(has_drrs); > if (current_config->has_drrs) > PIPE_CONF_CHECK_M_N(dp_m2_n2); > } else > -- > 2.6.3 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
On Wed, 25 Nov 2015, Daniel Vetter <daniel@ffwll.ch> wrote: > On Wed, Nov 25, 2015 at 03:26:47PM +0100, Takashi Iwai wrote: >> The commit [cfb23ed622d0: drm/i915: Allow fuzzy matching in >> pipe_config_compare, v2] relaxed the way to compare the pipe >> configurations, but one new comparison sneaked in there: it added the >> strict has_drrs value check. This causes a regression on many >> machines, typically HP laptops with a docking port, where the kernel >> spews warnings and eventually fails to set the mode properly like: >> [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in has_drrs (expected 1, found 0) >> ------------[ cut here ]------------ >> WARNING: CPU: 0 PID: 79 at drivers/gpu/drm/i915/intel_display.c:12700 intel_modeset_check_state+0x5aa/0x870 [i915]() >> pipe state doesn't match! >> .... >> >> This patch just removes the check again for fixing the regression. >> >> Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=104041 >> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92456 >> Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=956397 >> Fixes: cfb23ed622d0 ('drm/i915: Allow fuzzy matching in pipe_config_compare, v2') >> Cc: <stable@vger.kernel.org> # v4.3+ >> Reported-and-tested-by: Max Lin <mlin@suse.com> >> Signed-off-by: Takashi Iwai <tiwai@suse.de> > > Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Pushed to drm-intel-fixes, thanks for the patch and review. BR, Jani. > >> --- >> drivers/gpu/drm/i915/intel_display.c | 1 - >> 1 file changed, 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c >> index 71860f8680f9..12a2e9d1f633 100644 >> --- a/drivers/gpu/drm/i915/intel_display.c >> +++ b/drivers/gpu/drm/i915/intel_display.c >> @@ -12460,7 +12460,6 @@ intel_pipe_config_compare(struct drm_device *dev, >> if (INTEL_INFO(dev)->gen < 8) { >> PIPE_CONF_CHECK_M_N(dp_m_n); >> >> - PIPE_CONF_CHECK_I(has_drrs); >> if (current_config->has_drrs) >> PIPE_CONF_CHECK_M_N(dp_m2_n2); >> } else >> -- >> 2.6.3 >> >> _______________________________________________ >> Intel-gfx mailing list >> Intel-gfx@lists.freedesktop.org >> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 71860f8680f9..12a2e9d1f633 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -12460,7 +12460,6 @@ intel_pipe_config_compare(struct drm_device *dev, if (INTEL_INFO(dev)->gen < 8) { PIPE_CONF_CHECK_M_N(dp_m_n); - PIPE_CONF_CHECK_I(has_drrs); if (current_config->has_drrs) PIPE_CONF_CHECK_M_N(dp_m2_n2); } else
The commit [cfb23ed622d0: drm/i915: Allow fuzzy matching in pipe_config_compare, v2] relaxed the way to compare the pipe configurations, but one new comparison sneaked in there: it added the strict has_drrs value check. This causes a regression on many machines, typically HP laptops with a docking port, where the kernel spews warnings and eventually fails to set the mode properly like: [drm:intel_pipe_config_compare [i915]] *ERROR* mismatch in has_drrs (expected 1, found 0) ------------[ cut here ]------------ WARNING: CPU: 0 PID: 79 at drivers/gpu/drm/i915/intel_display.c:12700 intel_modeset_check_state+0x5aa/0x870 [i915]() pipe state doesn't match! .... This patch just removes the check again for fixing the regression. Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=104041 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92456 Bugzilla: https://bugzilla.suse.com/show_bug.cgi?id=956397 Fixes: cfb23ed622d0 ('drm/i915: Allow fuzzy matching in pipe_config_compare, v2') Cc: <stable@vger.kernel.org> # v4.3+ Reported-and-tested-by: Max Lin <mlin@suse.com> Signed-off-by: Takashi Iwai <tiwai@suse.de> --- drivers/gpu/drm/i915/intel_display.c | 1 - 1 file changed, 1 deletion(-)