Summary: | [BYT-T] suspend/resume regression from 3.17 kernel version and beyond | ||
---|---|---|---|
Product: | DRI | Reporter: | Glenn Williamson <glenn.p.williamson> |
Component: | DRM/Intel | Assignee: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Severity: | critical | ||
Priority: | high | CC: | intel-gfx-bugs |
Version: | unspecified | ||
Hardware: | x86 (IA32) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Glenn Williamson
2014-11-05 15:34:33 UTC
changing the title, since the description says BYT not BSW. I can reproduce this with 18.0-rc2, but I haven't found any way to get the logs out of the machine after the crash. But with drm-intel-nightly from git://anongit.freedesktop.org/drm-intel I'm not able to reproduce this issue. Could you give it a try? There are a few i915 suspend/resume fixes that could explain this. I also confirmed that drm-intel-nightly does not have the issue Also a bisect (either of the commit introducing the regression or the bugfix in -nightly using a revers bisect) is needed here I think. Could you try the commit below on 3.18-rc5, that got rid of the problem for me. Resetting simply to that commit in -nightly doesn't work, there seems to be multiple issues fixed since then: commit 950eabaf5a87257040e0c207be09487954113f54 Author: Imre Deak <imre.deak@intel.com> Date: Mon Sep 8 15:21:09 2014 +0300 drm/i915: vlv: fix display IRQ enable/disable We want to enable/disable display IRQs only if global i915 IRQs are enabled. To check the latter it's not enough to consult the DRM dev->irq_enabled flag, since runtime PM can disable/enable IRQs and it won't adjust this flag only the i915 specific dev_priv->pm._irqs_disabled flag. Fix this by using the proper intel_irqs_enabled() helper instead. Fortunately this didn't cause an actual problem since even if we enabled display IRQs too early (before enabling global i915 IRQs) the VLV_MASTER_IER would still be clear masking all IRQs. This issue was caught by commit 920dd15a2b2fc60d054646a8a1ffd6aeb6090e05 Author: Daniel Vetter <daniel.vetter@ffwll.ch> Date: Wed Aug 27 10:43:37 2014 +0200 drm/i915: WARN if interrupts aren't on in en/disable_pipestat Signed-off-by: Imre Deak <imre.deak@intel.com> Cc: Jesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 4847ed5..d22f870 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -3723,7 +3723,7 @@ void valleyview_enable_display_irqs(struct drm_i915_private *dev_priv) dev_priv->display_irqs_enabled = true; - if (dev_priv->dev->irq_enabled) + if (intel_irqs_enabled(dev_priv)) valleyview_display_irqs_install(dev_priv); } @@ -3736,7 +3736,7 @@ void valleyview_disable_display_irqs(struct drm_i915_private *dev_priv) dev_priv->display_irqs_enabled = false; - if (dev_priv->dev->irq_enabled) + if (intel_irqs_enabled(dev_priv)) valleyview_display_irqs_uninstall(dev_priv); } commit c352d1ba1e1e2c8a96af660944a58e86b12ac4af Author: Imre Deak <imre.deak@intel.com> Date: Thu Nov 20 16:05:55 2014 +0200 drm/i915: vlv: fix IRQ masking when uninstalling interrupts in drm-intel-next-fixes, cc: stable. |
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.