Closed Bug 901071 Opened 11 years ago Closed 11 years ago

[8.1] D2D rendering always being disabled for Windows 8.1 on Intel hardware

Categories

(Core :: Widget: Win32, defect)

x86_64
Windows 8
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla26

People

(Reporter: bbondy, Assigned: bbondy)

References

Details

(Whiteboard: [8.1] )

Attachments

(1 file, 1 obsolete file)

I recently upgraded to Windows 8.1 and noticed a problem.
I noticed that D2D i always being disabled on my machine.

I noticed that the reason D2D is getting disabled is not to a specific blocked driver,
but because the version number on the dll vs the driver is different.
( See http://dxr.mozilla.org/mozilla-central/source/widget/windows/GfxInfo.cpp#l502 )
Driver version: "9.18.10.3200" DLL version:9.17.10.3200
Attached patch Patch v1 (obsolete) — Splinter Review
- With intel hardware, a standard win8 installation upgraded to win8.1 always get blacklisted due to the check which is modified in this patch.
- I think the past 2 crashes were with version 18.* versions of the hardware. I'm not certain that 19.* is safe in every version but it seem fine on my machine. And we can watch crash data to see if anything shows up after this change. 
- I know the 2 if statements can be combined but I think it's more readable this way.
Attachment #785148 - Flags: review?(bjacob)
Blocks: 894039
- 8.* versions of the hardware
_ 8.* versions of the DLL and driver
Comment on attachment 785148 [details] [diff] [review]
Patch v1

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

::: widget/windows/GfxInfo.cpp
@@ +505,5 @@
> +      // above comment about crashes with old mismatches. If the GetDllVersion
> +      // call fails, then they return 0, so that will be considered a mismatch.
> +      if (driverNumericVersion < knownSafeMismatchVersion ||
> +          (dllNumericVersion < knownSafeMismatchVersion &&
> +           dllNumericVersion2 < dllNumericVersion2)) {

There seems to be a typo here: dllNumericVersion2 < dllNumericVersion2   (always false).

Also consider simplifying this into an condition of the form:

  max(a, b) < c

?
Attachment #785148 - Flags: review?(bjacob) → review-
Attached patch Patch v2.Splinter Review
Attachment #785148 - Attachment is obsolete: true
Attachment #785167 - Flags: review?(bjacob)
Was the patch successful?
It enables d2d after this patch ya, which is the same effect as the old force d2d option that we set.
can i do it manually or how to apply the patch without rebuild?
it should land soon after review, and then you can get a nightly build.  A couple days. Otherwise you'd have to build yourself after applying the patch. For that, see:
https://wiki.mozilla.org/Firefox/Windows_8_Integration
Attachment #785167 - Flags: review?(bjacob) → review+
No longer blocks: 894039
Blocks: 898795
Summary: D2D rendering always being disabled for Windows 8.1 on Intel hardware → [8.1] D2D rendering always being disabled for Windows 8.1 on Intel hardware
Whiteboard: [8.1]
https://hg.mozilla.org/mozilla-central/rev/94c38c3b3b17
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: