Last Comment Bug 844031 - Fail to detect the correct version of Intel graphics driver on Windows
: Fail to detect the correct version of Intel graphics driver on Windows
Status: VERIFIED FIXED
:
Product: Core
Classification: Components
Component: Graphics (show other bugs)
: Trunk
: x86_64 Windows 8
: -- normal (vote)
: mozilla23
Assigned To: Yuan Pengfei
: Ioana (away)
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2013-02-22 03:10 PST by Yuan Pengfei
Modified: 2013-04-17 11:54 PDT (History)
11 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---
verified
verified
verified


Attachments
Fix Intel graphics driver detection (1.96 KB, patch)
2013-02-22 03:10 PST, Yuan Pengfei
jacob.benoit.1: review+
bajaj.bhavana: approval‑mozilla‑aurora+
bajaj.bhavana: approval‑mozilla‑beta+
ryanvm: checkin+
Details | Diff | Splinter Review

Description Yuan Pengfei 2013-02-22 03:10:52 PST
Created attachment 717033 [details] [diff] [review]
Fix Intel graphics driver detection

Intel graphics driver 15.31.1.3006 WHQL (9.18.10.3006) renamed igd10umd64.dll to igd10iumd64.dll. So the detection code in widget/windows/GfxInfo.cpp should be fixed.
Comment 1 Yuan Pengfei 2013-03-28 07:34:14 PDT
Driver upgraded to 15.31.2.3055 WHQL (9.18.10.3055).
Still the same problem.
Comment 2 GMA 2013-04-03 05:29:11 PDT
Can you please also test 9.17.10.3071 driver? 

32bit
https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&ProdId=3498&DwnldID=22610

64bit
https://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&ProdId=3498&DwnldID=22605

Also can we please get this fixed because hardware acceleration is totally broken on the newer Intel drivers it seems.

http://forums.mozillazine.org/viewtopic.php?p=12771545#p12771545
Comment 3 :Cykesiopka 2013-04-03 16:15:26 PDT
This is also an issue for me using Windows 7 SP1 x86_64, on an Optimus laptop with a HD4000 and GT650M.

Previous, working driver version: 9.17.10.2932
  [uses igd10umd64.dll and igd10umd32.dll]

Current, non-working driver version: 9.17.10.3071 (or rather 9.18.10.3071, there's a mismatch between the actual driver version number and the one on the DL page)
  [uses igd10iumd64.dll and igd10iumd32.dll]

Even after installation of the 9.18.10.3071 drivers, copies of the 9.17.10.2932 DLLs are still left in my System32, SysWOW64 and driver store folders.

Using the spoofing method documented in https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers, I can get non-forced acceleration, but only if I set MOZ_GFX_SPOOF_DRIVER_VERSION to 9.17.10.2932.
Setting it to 9.17.10.2875 (a valid igd10umd64.dll and igd10umd32.dll driver number) does not work.
Comment 4 fxtech 2013-04-04 01:03:52 PDT
Forcing d2d and webgl the fishbowl performance are ok , but webgl still not working even is about:support say WebGL RendererGoogle Inc. -- ANGLE (Intel(R) HD Graphics 4000), 

plese try this demo

http://alteredqualia.com/three/examples/webgl_cubes.html
Comment 5 fxtech 2013-04-04 01:07:40 PDT
(In reply to Cykesiopka from comment #3)

> 
> Even after installation of the 9.18.10.3071 drivers, copies of the
> 9.17.10.2932 DLLs are still left in my System32, SysWOW64 and driver store
> folders.

form a command prompt use pnputil -e il will show you all the driver package , you should have two oemx.inf from intel driver , use pnputil -d  to remove the oldest related to 9.17 driver

this is mine

Published name :            oem5.inf
Driver package provider :   Intel Corporation
Class :                     Display adapters
Driver date and version :   03/19/2013 9.18.10.3071
Signer name :               Microsoft Windows Hardware Compatibility Publisher
Comment 6 :Cykesiopka 2013-04-05 22:44:43 PDT
(In reply to Yuan Pengfei from comment #0)
> Created attachment 717033 [details] [diff] [review]
> Fix Intel graphics driver detection
> 
> Intel graphics driver 15.31.1.3006 WHQL (9.18.10.3006) renamed
> igd10umd64.dll to igd10iumd64.dll. So the detection code in
> widget/windows/GfxInfo.cpp should be fixed.

Ask for a review?
Comment 7 (mostly gone) XtC4UaLL [:xtc4uall] 2013-04-05 23:27:26 PDT
(In reply to Cykesiopka from comment #6)
> (In reply to Yuan Pengfei from comment #0)
> > Created attachment 717033 [details] [diff] [review]
> > Fix Intel graphics driver detection
> > 
> > Intel graphics driver 15.31.1.3006 WHQL (9.18.10.3006) renamed
> > igd10umd64.dll to igd10iumd64.dll. So the detection code in
> > widget/windows/GfxInfo.cpp should be fixed.
> 
> Ask for a review?

FYI regarding providing Review/Feedback.
Comment 8 Benoit Jacob [:bjacob] (mostly away) 2013-04-06 07:59:28 PDT
Comment on attachment 717033 [details] [diff] [review]
Fix Intel graphics driver detection

Review of attachment 717033 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good, thanks very much for this patch!
Comment 9 Ryan VanderMeulen [:RyanVM] 2013-04-06 11:15:44 PDT
https://hg.mozilla.org/integration/mozilla-inbound/rev/ea8f727040ce

Thanks for the patch, Yuan! One request - to make life easier for those checking in on your behalf, can you please make sure that future patches follow the guidelines at the link below to ensure that all needed commit information is present. Thanks!
https://developer.mozilla.org/en-US/docs/Mercurial_FAQ#How_can_I_generate_a_patch_for_somebody_else_to_check-in_for_me.3F
Comment 10 Yuan Pengfei 2013-04-06 17:30:04 PDT
(In reply to Ryan VanderMeulen [:RyanVM] from comment #9)
> https://hg.mozilla.org/integration/mozilla-inbound/rev/ea8f727040ce
> 
> Thanks for the patch, Yuan! One request - to make life easier for those
> checking in on your behalf, can you please make sure that future patches
> follow the guidelines at the link below to ensure that all needed commit
> information is present. Thanks!
> https://developer.mozilla.org/en-US/docs/
> Mercurial_FAQ#How_can_I_generate_a_patch_for_somebody_else_to_check-
> in_for_me.3F

I get it. Thank you for telling me the link.
Comment 11 Phil Ringnalda (:philor) 2013-04-06 17:44:10 PDT
https://hg.mozilla.org/mozilla-central/rev/ea8f727040ce
Comment 12 :Cykesiopka 2013-04-10 00:27:07 PDT
Is there any chance this could be uplifted? It would probably be confusing for someone to update their driver and have it blocked, when it isn't listed on https://wiki.mozilla.org/Blocklisting/Blocked_Graphics_Drivers ...
Comment 13 Benoit Jacob [:bjacob] (mostly away) 2013-04-10 05:20:21 PDT
Comment on attachment 717033 [details] [diff] [review]
Fix Intel graphics driver detection

[Approval Request Comment]
Bug caused by (feature/regressing bug #): it regressed not on our side (this code didn't change since Firefox 4) but since Intel changed the name of one of their DLLs
User impact if declined: Among Windows users with Intel graphics (half our userbase), users with certain driver versions (I suppose the most recent ones) will get wrongly blacklisted for D3D10 and as a result, will get inferior graphics performance.
Testing completed (on m-c, etc.): been on m-c for a couple days
Risk to taking this patch (and alternatives if risky): low risk: self-contained 10-line patch touching only one function, I think it fits in my head.
String or IDL/UUID changes made by this patch: none
Comment 14 bhavana bajaj [:bajaj] 2013-04-10 17:56:21 PDT
(In reply to Benoit Jacob [:bjacob] from comment #13)
> Comment on attachment 717033 [details] [diff] [review]
> Fix Intel graphics driver detection
> 
> [Approval Request Comment]
> Bug caused by (feature/regressing bug #): it regressed not on our side (this
> code didn't change since Firefox 4) but since Intel changed the name of one
> of their DLLs
> User impact if declined: Among Windows users with Intel graphics (half our
> userbase), users with certain driver versions (I suppose the most recent
> ones) will get wrongly blacklisted for D3D10 and as a result, will get
> inferior graphics performance.
> Testing completed (on m-c, etc.): been on m-c for a couple days
> Risk to taking this patch (and alternatives if risky): low risk:
> self-contained 10-line patch touching only one function, I think it fits in
> my head.
> String or IDL/UUID changes made by this patch: none


The patch looks good enough to get on aurora and get some feedback in preparation for Beta landing based on below.Can you provide some pointers to QA to help with testing/verification here ?

:bjacob, Can we have some sort of testcase added here to make sure the patch is doing everything as expected and covers all the possible cases which we may not catch during manual testing ? The patch seems simple but worried about the risk of repercussions here if we miss a corner case :-\ ?
Comment 15 Ryan VanderMeulen [:RyanVM] 2013-04-11 06:13:13 PDT
https://hg.mozilla.org/releases/mozilla-aurora/rev/fc4552abab5b
Comment 16 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-11 10:06:05 PDT
Ioana, do you have a Windows 8 computer with an Intel GPU that you could use to test this? Thanks.
Comment 17 bhavana bajaj [:bajaj] 2013-04-14 16:43:32 PDT
Adding ni on Ioana, to help test this on aurora in preparation for Beta uplift by Tuesday .
Comment 18 juan becerra [:juanb] 2013-04-15 10:15:20 PDT
I've tested this on a Dell XPS with Windows 8 (with latest gfx card drivers as reported by System Update) and here's the info in about:support. Let me know if this verifies that this fix is working:

 Graphics

        Adapter Description
        Intel(R) HD Graphics 4000

        Adapter Drivers
        igdumd64 igd10umd64 igd10umd64 igdumd32 igd10umd32 igd10umd32

        Adapter RAM
        Unknown

        Device ID
        0x0166

        Direct2D Enabled
        true

        DirectWrite Enabled
        true (6.2.9200.16433)

        Driver Date
        9-2-2012

        Driver Version
        9.17.10.2849

        GPU #2 Active
        false

        GPU Accelerated Windows
        1/1 Direct3D 10

        Vendor ID
        0x8086

        WebGL Renderer
        Google Inc. -- ANGLE (Intel(R) HD Graphics 4000)

        AzureCanvasBackend
        direct2d

        AzureContentBackend
        direct2d

        AzureFallbackCanvasBackend
        cairo
Comment 19 Benoit Jacob [:bjacob] (mostly away) 2013-04-15 10:38:53 PDT
(In reply to bhavana bajaj [:bajaj] from comment #14)
> (In reply to Benoit Jacob [:bjacob] from comment #13)
> > Comment on attachment 717033 [details] [diff] [review]
> > Fix Intel graphics driver detection
> > 
> > [Approval Request Comment]
> > Bug caused by (feature/regressing bug #): it regressed not on our side (this
> > code didn't change since Firefox 4) but since Intel changed the name of one
> > of their DLLs
> > User impact if declined: Among Windows users with Intel graphics (half our
> > userbase), users with certain driver versions (I suppose the most recent
> > ones) will get wrongly blacklisted for D3D10 and as a result, will get
> > inferior graphics performance.
> > Testing completed (on m-c, etc.): been on m-c for a couple days
> > Risk to taking this patch (and alternatives if risky): low risk:
> > self-contained 10-line patch touching only one function, I think it fits in
> > my head.
> > String or IDL/UUID changes made by this patch: none
> 
> 
> The patch looks good enough to get on aurora and get some feedback in
> preparation for Beta landing based on below.Can you provide some pointers to
> QA to help with testing/verification here ?

Well, the test procedure is take a Windows 7 or 8 machine with a Intel GPU; install the latest Intel graphics driver (or whichever version is recent enough to have igd10iumd64.dll / igd10iumd32.dll instead of igd10umd64.dll / igd10umd32.dll). Restart Firefox. Go to about:support. Do you get Direct3D 10 layers and Direct 2D ? If yes, this patch is verified. If no, this patch didn't work.

> 
> :bjacob, Can we have some sort of testcase added here to make sure the patch
> is doing everything as expected and covers all the possible cases which we
> may not catch during manual testing ? The patch seems simple but worried
> about the risk of repercussions here if we miss a corner case :-\ ?

This is not very easy to test... Testing this is only valuable in real-world conditions, and it's hard to spoof the presence of a DLL file with the wrong DLL version.
Comment 20 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-15 12:32:39 PDT
Juan, can you please try the drivers from comment 2? In "broken" builds it should incorrectly report the version as "9.17.10.3071" instead of "9.18.10.3071". In "fixed" builds it should be correctly reported. Thanks.
Comment 21 juan becerra [:juanb] 2013-04-15 14:16:18 PDT
Using the drivers from comment #2, on Win8, on a build from 2013-04-05 I get a driver version of:

9.18.10.3071

As reported in about:support. Same with latest Aurora from 04-15. I'm not seeing a difference.
Comment 22 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-15 15:04:20 PDT
Thanks Juan. Benoit do you know what could be going on here? 

Yuan, since you reported this originally can you do some testing to see if this is fixed for you in the latest Aurora and Nightly builds?
Comment 23 Benoit Jacob [:bjacob] (mostly away) 2013-04-15 15:08:28 PDT
As discussed on IRC with Juan: his machine does not have igd10iumd64.dll or igd10iumd32.dll. See comment 3.
Comment 24 :Cykesiopka 2013-04-15 15:29:13 PDT
(In reply to Cykesiopka from comment #3)
> (or rather 9.18.10.3071,
> there's a mismatch between the actual driver version number and the one on
> the DL page)

Please ignore this part: I use Windows 7 and not Windows 8, so it might be that my driver versions are x.17.x.x instead of x.18.x.x.

The exact version probably doesn't matter as long as the driver includes the DLLs with the new names.

Also, thanks for the quick uplift!
Comment 25 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-15 15:35:21 PDT
Okay, thanks for the clarification. Based on Juan's driver list in comment 18 I think we can call this verified. Juan, can you please confirm which Firefox branches you tested and mark the status flags accordingly? Thank you.
Comment 26 bhavana bajaj [:bajaj] 2013-04-16 10:51:58 PDT
Thanks for the verification. Request to land asap to get this in our beta 3 , going to build shortly.
Comment 27 Benoit Jacob [:bjacob] (mostly away) 2013-04-16 11:22:46 PDT
https://hg.mozilla.org/releases/mozilla-beta/rev/b30073a4dfd1
Comment 28 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-16 11:36:26 PDT
Dropping QAWANTED but leaving VERIFYME to track for Firefox 21b3 verification.
Comment 29 Ryan VanderMeulen [:RyanVM] 2013-04-16 12:24:45 PDT
(In reply to Benoit Jacob [:bjacob] from comment #27)
> https://hg.mozilla.org/releases/mozilla-beta/rev/b30073a4dfd1

This push is empty.
Comment 30 Benoit Jacob [:bjacob] (mostly away) 2013-04-16 12:30:44 PDT
Sorry, again:

https://hg.mozilla.org/releases/mozilla-beta/rev/28d4b9ca9ceb
Comment 31 Bogdan Maris, QA [:bogdan_maris] 2013-04-17 04:29:53 PDT
User Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:21.0) Gecko/20100101 Firefox/21.0

On a Windows 8 machine with Intel Processor Graphics 2000, I've updated to the latest Intel graphics driver (version 9.17.10.3062). With Firefox 21 beta 3 (Build ID: 20130416200523) in about:support, I do get Direct3D 10 layers and Direct 2D, but the dll file is igd10umd64, not igd10iumd64. It's because igd10iumd64.dll is specific to 3rd generation processors?
Comment 32 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2013-04-17 08:55:36 PDT
(In reply to Bogdan Maris [QA] from comment #31)
> User Agent: Mozilla/5.0 (Windows NT 6.2; WOW64; rv:21.0) Gecko/20100101
> Firefox/21.0
> 
> the dll file is igd10umd64, not igd10iumd64.

I believe this is precisely what we are looking for to verify this is fixed. In other words if you had seen igd10iumd64 instead of igd10umd64 this would mean it is not fixed. Since you did not I'm marking this verified fixed. Please reopen if this is incorrect.
Comment 33 :Cykesiopka 2013-04-17 11:54:11 PDT
(In reply to Anthony Hughes, Mozilla QA (:ashughes) from comment #32)
> I believe this is precisely what we are looking for to verify this is fixed.
> In other words if you had seen igd10iumd64 instead of igd10umd64 this would
> mean it is not fixed. Since you did not I'm marking this verified fixed.
> Please reopen if this is incorrect.

Not quite, although this would suggest that the fix hasn't regressed the previous check.

If this patch has worked, GPU acceleration should be present for drivers that use igd10umd{32|64}, as well as drivers that use igd10iumd{32|64}, without needing to force it through. (As long as the drivers are recent enough and aren't specifically blocked, of course)

FWIW, I've checked that the fix works in Firefox 21 Beta 3, using the igd10iumd64 9.17.10.3071 driver and Windows 7.

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