Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1316177 > unrolled thread

Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")

Started byBjørn Mork <bjorn@mork.no>
First post2016-01-25 04:00 +0100
Last post2016-01-26 13:00 +0100
Articles 6 — 4 participants

Back to article view | Back to linux.kernel


Contents

  Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection") Bjørn Mork <bjorn@mork.no> - 2016-01-25 04:00 +0100
    [PATCH] Revert "drm/i915: more virtual south bridge detection" Jani Nikula <jani.nikula@intel.com> - 2016-01-25 09:30 +0100
      Re: [PATCH] Revert "drm/i915: more virtual south bridge detection" Bjørn Mork <bjorn@mork.no> - 2016-01-25 10:20 +0100
    Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0  ("drm/i915: more virtual south bridge detection") Bruno Wolff III <bruno@wolff.to> - 2016-01-25 17:10 +0100
    Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0  ("drm/i915: more virtual south bridge detection") Harald Arnesen <harald@skogtun.org> - 2016-01-26 11:50 +0100
    Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0  ("drm/i915: more virtual south bridge detection") Harald Arnesen <harald@skogtun.org> - 2016-01-26 13:00 +0100

#1316177 — Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")

FromBjørn Mork <bjorn@mork.no>
Date2016-01-25 04:00 +0100
SubjectRegression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
Message-ID<qUFxL-5DN-5@gated-at.bofh.it>
Hello,

my oldish Thinkpad X301 only wanted to show a blank screen in v4.5-rc1.
Bisecting resulted in:

HEAD is now at 39bfcd5235e0 drm/i915: more virtual south bridge detection
39bfcd5235e07e95ad3e70eab8e0b85db181de9e is the first bad commit
commit 39bfcd5235e07e95ad3e70eab8e0b85db181de9e
Author: Gerd Hoffmann <kraxel@redhat.com>
Date:   Thu Nov 26 12:03:51 2015 +0100

    drm/i915: more virtual south bridge detection
    
    Commit "30c964a drm/i915: Detect virtual south bridge" detects and
    handles the southbridge emulated by vmware esx.  Add the ich9 south
    bridge emulated by 'qemu -M q35'.
    
    Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>

:040000 040000 b59ceb519d517a00e41e575346505b9ebde06288 825eb4e5684952de0931312183d1cf163c43219a M      drivers


I have confirmed tha reverting this commit on top of v4.5-rc1 fixes the
problem.  And looking into the details, I believe this makes sense.  The
patch does this (where id is a 0xff00 masked device ID):


diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 649e20aaa3ff..90faa8e03fca 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -565,7 +565,8 @@ void intel_detect_pch(struct drm_device *dev)
                                DRM_DEBUG_KMS("Found SunrisePoint LP PCH\n");
                                WARN_ON(!IS_SKYLAKE(dev) &&
                                        !IS_KABYLAKE(dev));
-                       } else if (id == INTEL_PCH_P2X_DEVICE_ID_TYPE) {
+                       } else if ((id == INTEL_PCH_P2X_DEVICE_ID_TYPE) ||
+                                  (id == INTEL_PCH_QEMU_DEVICE_ID_TYPE)) {
                                dev_priv->pch_type = intel_virt_detect_pch(dev);
                        } else
                                continue;
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index 3d8741eff7d3..439226d39437 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2609,6 +2609,7 @@ struct drm_i915_cmd_table {
 #define INTEL_PCH_SPT_DEVICE_ID_TYPE           0xA100
 #define INTEL_PCH_SPT_LP_DEVICE_ID_TYPE                0x9D00
 #define INTEL_PCH_P2X_DEVICE_ID_TYPE           0x7100
+#define INTEL_PCH_QEMU_DEVICE_ID_TYPE          0x2900 /* qemu q35 has 2918 */
 
 #define INTEL_PCH_TYPE(dev) (__I915__(dev)->pch_type)
 #define HAS_PCH_SPT(dev) (INTEL_PCH_TYPE(dev) == PCH_SPT)



FWIW, the very real ISA bridge of my laptop matches the above:

bjorn@nemi:~$ lspci -vvvnns1f.0
00:1f.0 ISA bridge [0601]: Intel Corporation ICH9M-E LPC Interface Controller [8086:2917] (rev 03)
        Subsystem: Lenovo ICH9M-E LPC Interface Controller [17aa:20f5]
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Capabilities: <access denied>
        Kernel driver in use: lpc_ich
        Kernel modules: lpc_ich


This is a GM45 chipset.  I believe most chipsets of this generation use
29xx device IDs for the ISA bridge.  For example the P35:

 bjorn@canardo:~$ lspci -nns1f.0
 00:1f.0 ISA bridge [0601]: Intel Corporation 82801IB (ICH9) LPC Interface Controller [8086:2918] (rev 02)

You cannot assume all these are virtual systems. There are still crazy
people out there using the real thing :)



Bjørn

[toc] | [next] | [standalone]


#1316272 — [PATCH] Revert "drm/i915: more virtual south bridge detection"

FromJani Nikula <jani.nikula@intel.com>
Date2016-01-25 09:30 +0100
Subject[PATCH] Revert "drm/i915: more virtual south bridge detection"
Message-ID<qUKH8-18J-1@gated-at.bofh.it>
In reply to#1316177
This reverts

commit 39bfcd5235e07e95ad3e70eab8e0b85db181de9e
Author: Gerd Hoffmann <kraxel@redhat.com>
Date:   Thu Nov 26 12:03:51 2015 +0100

    drm/i915: more virtual south bridge detection

because it mistakes real physical south bridges for virtual ones.

Reported-by: Bjørn Mork <bjorn@mork.no>
Reference: http://mid.gmane.org/87y4bes74m.fsf@nemi.mork.no
Cc: Gerd Hoffmann <kraxel@redhat.com>
Fixes: 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
Signed-off-by: Jani Nikula <jani.nikula@intel.com>

---

Bjørn, please provide your Tested-by.

Gerd, back to the drawing board, I'm afraid.
---
 drivers/gpu/drm/i915/i915_drv.c | 3 +--
 drivers/gpu/drm/i915/i915_drv.h | 1 -
 2 files changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 706b8eabfaf4..a702262daefc 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -500,8 +500,7 @@ void intel_detect_pch(struct drm_device *dev)
 				DRM_DEBUG_KMS("Found SunrisePoint LP PCH\n");
 				WARN_ON(!IS_SKYLAKE(dev) &&
 					!IS_KABYLAKE(dev));
-			} else if ((id == INTEL_PCH_P2X_DEVICE_ID_TYPE) ||
-				   (id == INTEL_PCH_QEMU_DEVICE_ID_TYPE)) {
+			} else if (id == INTEL_PCH_P2X_DEVICE_ID_TYPE) {
 				dev_priv->pch_type = intel_virt_detect_pch(dev);
 			} else
 				continue;
diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
index afb0beee9975..1c06661ebf08 100644
--- a/drivers/gpu/drm/i915/i915_drv.h
+++ b/drivers/gpu/drm/i915/i915_drv.h
@@ -2645,7 +2645,6 @@ struct drm_i915_cmd_table {
 #define INTEL_PCH_SPT_DEVICE_ID_TYPE		0xA100
 #define INTEL_PCH_SPT_LP_DEVICE_ID_TYPE		0x9D00
 #define INTEL_PCH_P2X_DEVICE_ID_TYPE		0x7100
-#define INTEL_PCH_QEMU_DEVICE_ID_TYPE		0x2900 /* qemu q35 has 2918 */
 
 #define INTEL_PCH_TYPE(dev) (__I915__(dev)->pch_type)
 #define HAS_PCH_SPT(dev) (INTEL_PCH_TYPE(dev) == PCH_SPT)
-- 
2.1.4

[toc] | [prev] | [next] | [standalone]


#1316314 — Re: [PATCH] Revert "drm/i915: more virtual south bridge detection"

FromBjørn Mork <bjorn@mork.no>
Date2016-01-25 10:20 +0100
SubjectRe: [PATCH] Revert "drm/i915: more virtual south bridge detection"
Message-ID<qULtx-1Kq-17@gated-at.bofh.it>
In reply to#1316272
Jani Nikula <jani.nikula@intel.com> writes:

> This reverts
>
> commit 39bfcd5235e07e95ad3e70eab8e0b85db181de9e
> Author: Gerd Hoffmann <kraxel@redhat.com>
> Date:   Thu Nov 26 12:03:51 2015 +0100
>
>     drm/i915: more virtual south bridge detection
>
> because it mistakes real physical south bridges for virtual ones.
>
> Reported-by: Bjørn Mork <bjorn@mork.no>
> Reference: http://mid.gmane.org/87y4bes74m.fsf@nemi.mork.no
> Cc: Gerd Hoffmann <kraxel@redhat.com>
> Fixes: 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
>
> ---
>
> Bjørn, please provide your Tested-by.

In case you still want it:

Tested-by: Bjørn Mork <bjorn@mork.no>

But I'm also happy with Gerd's solution (assuming he fixex the QEMU
subsystem vendor-id).


Thanks,
Bjørn

[toc] | [prev] | [next] | [standalone]


#1316916 — Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")

FromBruno Wolff III <bruno@wolff.to>
Date2016-01-25 17:10 +0100
SubjectRe: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
Message-ID<qURSi-6uy-23@gated-at.bofh.it>
In reply to#1316177
On Mon, Jan 25, 2016 at 03:52:25 +0100,
  Bjørn Mork <bjorn@mork.no> wrote:
>Hello,
>
>my oldish Thinkpad X301 only wanted to show a blank screen in v4.5-rc1.
>Bisecting resulted in:
>
>    drm/i915: more virtual south bridge detection

I am likely seeing the same problem on a Dell laptop. I haven't finished 
my bisect yet, but the above commit is still in the list of 605 possible 
problem commits.

I'll test reverting that commit tonight and see if that fixes my problem.

[toc] | [prev] | [next] | [standalone]


#1317731 — Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")

FromHarald Arnesen <harald@skogtun.org>
Date2016-01-26 11:50 +0100
SubjectRe: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
Message-ID<qV9ma-2RQ-19@gated-at.bofh.it>
In reply to#1316177
Bjørn Mork [2016-01-25 03:52]:

> Hello,
> 
> my oldish Thinkpad X301 only wanted to show a blank screen in v4.5-rc1.

Same thing with my Thinkpad T500. I had just started bisecting, but will
try this revert first.
-- 
Hilsen Harald

[toc] | [prev] | [next] | [standalone]


#1317785 — Re: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")

FromHarald Arnesen <harald@skogtun.org>
Date2016-01-26 13:00 +0100
SubjectRe: Regression in v4.5-rc1, bisected to commit 39bfcd5235e0 ("drm/i915: more virtual south bridge detection")
Message-ID<qVarW-3A1-23@gated-at.bofh.it>
In reply to#1316177
Bjørn Mork [2016-01-25 03:52]:

> I have confirmed tha reverting this commit on top of v4.5-rc1 fixes the
> problem.

Confirmed. Fixes the problem with my T500 also.
-- 
Hilsen Harald

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web