Intel 965 Express: Direct2D: Blocked for your graphics driver version mismatch between registry and DLL.
Categories
(Core :: Graphics, defect, P2)
Tracking
()
People
(Reporter: poizan, Assigned: bradwerth)
References
Details
(Whiteboard: [gfx-noted])
Attachments
(2 files)
Updated•7 years ago
|
Comment 5•7 years ago
|
||
Comment 6•2 years ago
|
||
This blocking logic is a nasty anti-feature which is causing unplayable video performance. Google Chrome video performance is much snappier on the same hardware (in my case HP 6710b) apparently because it does leverage hardware acceleration. I'm also using driver 8.15.10.1930 under WIndows 10 64 bit.
As noted above, force enabling and spoofing cannot bypass this tangled web of version number blocking and dll/inf version checks. Note the Intel Mobile 965 Express is not even meant to be blocked by Bug 843273 which is for the later HD Graphics generation. After 5 years please for the love of humanity just fix it!
Comment 7•2 years ago
|
||
Please remove this dll/registry version mismatch check (it cannot by bypassed by spoofing or force enabling). Should have been done under Bug 1762125.
This version mismatch is common with these old drivers and not due to bad driver installations. The whole premise for the original patch appears to be due to speculation only.
Not everyone is running the latest hardware, and every opportunity should be taken to provide acceleration for all end users to maximize the lifetime of old hardware and minimize landfill.
Decision Log
Blocklisted; failure code BLOCKLIST_FEATURE_FAILURE_MISMATCHED_VERSION
Failure Log
Mismatched driver versions between the registry 8.15.10.1930 and DLL(s) 8.14.10.1930, reported.
Updated•2 years ago
|
Comment 8•2 years ago
|
||
I’ve switched the severity to S2 since this can affect some older computers that cannot take advantage of hardware acceleration.
As Smythe Bacchus said 3 months ago, this cannot be bypassed by spoofing or force enabling. There’s no workaround available at this time.
It would be nice if we would have a preference to tell Firefox not to block due to graphics driver version mismatch between the registry and DLL(s).
A satisfactory workaround is still needed.
Assignee | ||
Comment 9•2 years ago
|
||
I'll remove this check by believing the registry version number exclusively.
Assignee | ||
Comment 10•2 years ago
|
||
Mismatched driver versions will be noted in any associated crash
reports, but otherwise will not be reported and will not prevent
hardware acceleration from activating.
Updated•2 years ago
|
Comment 11•2 years ago
|
||
Comment 12•2 years ago
|
||
Backed out for causing build bustages on GfxInfo.cpp.
[task 2023-02-07T19:07:28.582Z] 19:07:28 INFO - gmake[4]: Entering directory '/builds/worker/workspace/obj-build/widget/windows'
[task 2023-02-07T19:07:28.587Z] 19:07:28 INFO - /builds/worker/fetches/sccache/sccache /builds/worker/fetches/clang/bin/clang-cl -Qunused-arguments -Xclang -std=c++17 -Xclang -ivfsoverlay -Xclang /builds/worker/fetches/vs/overlay.yaml -FoUnified_cpp_widget_windows0.obj -c -I/builds/worker/workspace/obj-build/dist/stl_wrappers -Xclang -ftrivial-auto-var-init=pattern -guard:cf -DDEBUG=1 -DUNICODE -D_UNICODE -D_CRT_RAND_S -DCERT_CHAIN_PARA_HAS_EXTRA_FIELDS -D_SECURE_ATL -DCHROMIUM_BUILD -DU_STATIC_IMPLEMENTATION -DOS_WIN=1 -DWIN32 -D_WIN32 -D_WINDOWS -DWIN32_LEAN_AND_MEAN -DCOMPILER_MSVC -DMOZ_UNICODE '-DMOZ_APP_NAME="firefox"' '-DMOZ_TOAST_APP_NAME="Firefox"' -DMOZ_ENABLE_D3D10_LAYER -DWINAPI_NO_BUNDLED_LIBRARIES -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -DSTATIC_EXPORTABLE_JS_API -I/builds/worker/checkouts/gecko/widget/windows -I/builds/worker/workspace/obj-build/widget/windows -I/builds/worker/workspace/obj-build/ipc/ipdl/_ipdlheaders -I/builds/worker/checkouts/gecko/ipc/chromium/src -I/builds/worker/checkouts/gecko/gfx/cairo/cairo/src -I/builds/worker/checkouts/gecko/layout/forms -I/builds/worker/checkouts/gecko/layout/generic -I/builds/worker/checkouts/gecko/layout/style -I/builds/worker/checkouts/gecko/layout/xul -I/builds/worker/checkouts/gecko/toolkit/xre -I/builds/worker/checkouts/gecko/widget -I/builds/worker/checkouts/gecko/widget/headless -I/builds/worker/checkouts/gecko/xpcom/base -I/builds/worker/workspace/obj-build/dist/include -I/builds/worker/workspace/obj-build/dist/include/nspr -I/builds/worker/workspace/obj-build/dist/include/nss -MD -FI /builds/worker/workspace/obj-build/mozilla-config.h -DMOZILLA_CLIENT -fcrash-diagnostics-dir=/builds/worker/artifacts -TP -Zc:sizedDealloc- -D_HAS_EXCEPTIONS=0 -Gy -Zc:inline -Gw -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -Xclang -load -Xclang /builds/worker/workspace/obj-build/build/clang-plugin/libclang-plugin.so -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -Werror -W3 -Wbitfield-enum-conversion -Wdeprecated-this-capture -Wempty-body -Wformat-type-confusion -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtautological-constant-in-range-compare -Wtype-limits -Wno-error=tautological-type-limit-compare -Wunreachable-code -Wunreachable-code-return -Wunused-but-set-parameter -Wno-invalid-offsetof -Wclass-varargs -Wempty-init-stmt -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wno-range-loop-analysis -Wc++2a-compat -Wenum-compare-conditional -Wenum-float-conversion -Wvolatile -Wno-ambiguous-reversed-operator -Wno-error=deprecated -Wno-error=deprecated-anon-enum-enum-conversion -Wno-error=deprecated-enum-enum-conversion -Wno-error=deprecated-pragma -Wno-error=deprecated-this-capture -Wcomma -Wimplicit-fallthrough -Wstring-conversion -Wno-inline-new-delete -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=free-nonheap-object -Wno-error=atomic-alignment -Wno-error=deprecated-builtins -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-microsoft-exception-spec -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -Wno-psabi -Wthread-safety -Wno-unknown-warning-option -fno-strict-aliasing -Xclang -ffp-contract=off -Xclang -MP -Xclang -dependency-file -Xclang .deps/Unified_cpp_widget_windows0.obj.pp -Xclang -MT -Xclang Unified_cpp_widget_windows0.obj Unified_cpp_widget_windows0.cpp
[task 2023-02-07T19:07:28.587Z] 19:07:28 INFO - In file included from Unified_cpp_widget_windows0.cpp:20:
[task 2023-02-07T19:07:28.587Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(1956,76): error: function definition is not allowed here
[task 2023-02-07T19:07:28.588Z] 19:07:28 INFO - void GfxInfo::DescribeFeatures(JSContext* aCx, JS::Handle<JSObject*> aObj) {
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.589Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(2009,66): error: function definition is not allowed here
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - NS_IMETHODIMP GfxInfo::SpoofVendorID(const nsAString& aVendorID) {
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.589Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(2014,66): error: function definition is not allowed here
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - NS_IMETHODIMP GfxInfo::SpoofDeviceID(const nsAString& aDeviceID) {
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.589Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(2019,76): error: function definition is not allowed here
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - NS_IMETHODIMP GfxInfo::SpoofDriverVersion(const nsAString& aDriverVersion) {
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.589Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(2024,58): error: function definition is not allowed here
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - NS_IMETHODIMP GfxInfo::SpoofOSVersion(uint32_t aVersion) {
[task 2023-02-07T19:07:28.589Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.590Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/GfxInfo.cpp(2029,42): error: function definition is not allowed here
[task 2023-02-07T19:07:28.590Z] 19:07:28 INFO - NS_IMETHODIMP GfxInfo::FireTestProcess() { return NS_OK; }
[task 2023-02-07T19:07:28.590Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.590Z] 19:07:28 INFO - In file included from Unified_cpp_widget_windows0.cpp:29:
[task 2023-02-07T19:07:28.591Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/IEnumFE.cpp(10,17): error: qualified reference to 'CEnumFormatEtc' is a constructor name rather than a type in this context
[task 2023-02-07T19:07:28.591Z] 19:07:28 INFO - CEnumFormatEtc::CEnumFormatEtc() : mRefCnt(0), mCurrentIdx(0) {}
[task 2023-02-07T19:07:28.591Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.591Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/IEnumFE.cpp(10,34): error: expected ';' after expression
[task 2023-02-07T19:07:28.592Z] 19:07:28 INFO - CEnumFormatEtc::CEnumFormatEtc() : mRefCnt(0), mCurrentIdx(0) {}
[task 2023-02-07T19:07:28.592Z] 19:07:28 INFO - ^
[task 2023-02-07T19:07:28.592Z] 19:07:28 INFO - ;
[task 2023-02-07T19:07:28.592Z] 19:07:28 ERROR - /builds/worker/checkouts/gecko/widget/windows/IEnumFE.cpp(10,36): error: type '::mozilla::ThreadSafeAutoRefCnt' does not provide a call operator
[task 2023-02-07T19:07:28.592Z] 19:07:28 INFO - CEnumFormatEtc::CEnumFormatEtc() : mRefCnt(0), mCurrentIdx(0) {}
<...>
Comment 13•2 years ago
|
||
Comment 14•2 years ago
|
||
bugherder |
Updated•2 years ago
|
Comment 15•2 years ago
|
||
Can you also create a custom preference for all Firefox editions that will allow hardware acceleration with mismatched DLL and registry versions?
It looks like only Nightly builds will allow that.
Assignee | ||
Comment 16•2 years ago
•
|
||
(In reply to Cristian Silaghi from comment #15)
Can you also create a custom preference for all Firefox editions that will allow hardware acceleration with mismatched DLL and registry versions?
Consider that if we added a pref, now unless we uplifted it, that pref would only exist in Nightly until it became Beta and then became Release. In other words, any user who wants to try Firefox without this feature active would need to run Nightly anyway. I'll file a follow-up to review the prevalence of this issue appearing in crash reports, and we'll remove this check entirely if the data supports it. If not, then we'll probably add a pref so users can opt-out, as you suggest.
Comment 17•2 years ago
|
||
I'm aware it will take time before landing in the Release channel, but it would be nice to have a preference that will help experienced users in the future.
Either remove the check entirely or let us have a custom preference to bypass the check. Just my two cents.
Assignee | ||
Comment 19•2 years ago
|
||
Seems like DriverVersionMismatch
is showing up in Nightly crash reports since the patch landed. We'll discuss if this volume is low enough that we should stop blocking hardware acceleration for this reason.
Assignee | ||
Comment 20•2 years ago
|
||
No matter what we do, there needs to be some kind of next step here so I'm re-opening the Bug.
Assignee | ||
Updated•2 years ago
|
Updated•2 years ago
|
Assignee | ||
Comment 21•2 years ago
|
||
After consideration, we'll remove this check for all channels.
Assignee | ||
Comment 22•2 years ago
|
||
The presence of "DriverVersionMismatch" does not seem to be an outlying
indicator in crash reports for Intel 965 Express hardware. This patch
allows hardware WebRender in all channels for that hardware, and we'll
deal with individual driver bugs as they appear.
Comment 23•2 years ago
|
||
Comment 24•2 years ago
|
||
bugherder |
Description
•