Closed Bug 618899 Opened 9 years ago Closed 9 years ago

Crash [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ][@ Accelerator.dll@0x57ab0 ] with Video Accelerator 3.2.1.6 from Speedbit

Categories

(Toolkit :: Blocklist Policy Requests, defect, critical)

x86
Windows XP
defect
Not set
critical

Tracking

()

RESOLVED FIXED
Tracking Status
blocking2.0 --- final+

People

(Reporter: marcia, Assigned: christian)

References

(Depends on 1 open bug)

Details

(Keywords: crash, Whiteboard: [softblocker])

Crash Data

Attachments

(1 file)

Seen while reviewing crash stats. http://tinyurl.com/237rv2j to the crashes which are all Windows.

Frame 	Module 	Signature [Expand] 	Source
0 	ntdll.dll 	RtlpWaitOnCriticalSection 	
1 	ntdll.dll 	RtlDllShutdownInProgress 	
2 	Accelerator.dll 	Accelerator.dll@0x56f6c 	
3 	Accelerator.dll 	Accelerator.dll@0x12f2ff 	
4 	Accelerator.dll 	Accelerator.dll@0x229ed7 	
5 	Accelerator.dll 	Accelerator.dll@0x130d1e 	
6 	Accelerator.dll 	Accelerator.dll@0x22a1f9 	
7 	Accelerator.dll 	Accelerator.dll@0x134d34 	
8 	Accelerator.dll 	Accelerator.dll@0x27d6 	
9 	Accelerator.dll 	Accelerator.dll@0x21471f 	
10 	Accelerator.dll 	Accelerator.dll@0x14f617 	
11 	Accelerator.dll 	Accelerator.dll@0x15fd53 	
12 	Accelerator.dll 	Accelerator.dll@0x26e7d3
http://www.videoaccelerator.com/download/ - speedbit video accelerator. probably blocklisting not extensions
or maybe a windows 2d graphics thing like mentioned here

http://blogs.msdn.com/b/satnam_singh/archive/2009/12/15/gpgpu-and-x64-multicore-programming-with-accelerator-from-f.aspx  

that gets put in a place like C:\Program Files (x86)\Microsoft\Accelerator v2\bin\Managed\Release\Microsoft.Accelerator.dll
the filename should be Microsoft.Accelerator.dll in that case.

Free SpeedBit Video Accelerator Beta - Watch smoother web videos ...
Version: 3.2.1.6. Filesize: 8.01 MB Release date: 9.12.2010 ... If leftover files from the DLL folders remain in the SPEEDbit Video Accelerator program ...
www.videoaccelerator.com/beta/ 

3.2.1.6 matches the file version from the first incident i picked. So i claim it's definitely the right one
Summary: Firefox 4.0b8pre crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] → Firefox 4.0b8pre crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] from SpeedBit Video Accelerator
[@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] crash signature is #36 top crasher in 4.0b8 for the last week.
Summary: Firefox 4.0b8pre crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] from SpeedBit Video Accelerator → Crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] or [@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Video Accelerator
> #36 top crasher in 4.0b8 for the last week.
Oops! #36 in 4.0b9pre and #19 in 4.0b8.
status2.0: --- → ?
Now #14 in 4.0b9
Summary: Crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] or [@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Video Accelerator → Crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] or [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ] or [@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Video Accelerator
With the 4 combined signatures, it is #9 top crasher in 4.0b10.
blocking2.0: --- → ?
status2.0: ? → ---
Summary: Crash in [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ] or [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ] or [@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Video Accelerator → Crash [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ][@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Accelerator
I think this needs to live in blocklisting, not Firefox - moving and adding Kev for his thoughts.

Joe - it says graphics on the label, any likelihood that we caused them to get crashier here?
Component: Extension Compatibility → Blocklisting
Product: Firefox → addons.mozilla.org
QA Contact: extension.compatibility → blocklisting
Version: Trunk → unspecified
It's impossible to tell from these stacks, because they don't give us any Gecko stack frames.

Note that this is a download accelerator, not a "video" accelerator; that being said, I thought we'd frozen our interfaces for 2.0 fairly effectively.

Someone should get a minidump and see if they can get a better stack from that.
I doubt you're going to get a better stack, I think this is a thread started purely by this extension. If you click on "show other threads", you'll see that our main thread (Thread 0) is just sitting in the event loop. There's at least one other thread that's all Accelerator.dll as well. From the crash address and top few frames, it looks like they're trying to use a NULL CRITICAL_SECTION. This sounds like it's their bug.
blocking2.0: ? → final+
Whiteboard: [softblocker]
Have we contacted these people at all? It's a softblocker for Firefox 4 but before we block we need to:

1. reach out to them
2. identify the version ranges to block

Kev, can you help?
Assignee: nobody → kev
Contact made this morning, and I have also made them aware of this bug. I've asked them to comment directly here, and hopefully we'll from them shortly.
Assignee: kev → nobody
Whiteboard: [softblocker] → [softblocker][Needs block ranges][Block planned for 2/8]
Hi,

This bug appears to be related to a conflict between a specific version (ver. 3.2.1.6) of SPEEDbit Video Accelerator and Firefox. 

We are not aware of any such conflict between the latest version of SPEEDbit Video Accelerator (ver. 3.2.1.8), available at http://www.videoaccelerator.com , and Firefox.

We always recommend to use the latest version of our products. 

We are sorry for any inconvenience experienced.   

Regards,
Sela
> This bug appears to be related to a conflict between a specific version (ver.
> 3.2.1.6) of SPEEDbit Video Accelerator and Firefox. 
* Confirmed for this crash signature:
RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c|EXCEPTION_ACCESS_VIOLATION_WRITE (78 crashes) (#51 top crasher)
        100% (78/78) vs.   1% (324/57826) 3.2.1.6

RtlpWaitOnCriticalSection | RtlDllShutdownInProgress
No crashes

* Unconfirmed for:
RtlpWaitForCriticalSection | RtlEnterCriticalSection|EXCEPTION_ACCESS_VIOLATION_WRITE (259 crashes) (#37 top crasher)
         56% (146/259) vs.   1% (324/57826) 3.2.1.6
          1% (2/259) vs.   0% (31/57826) 3.2.1.7
          4% (10/259) vs.   0% (251/57826) 3.2.1.8

Accelerator.dll@0x57ab0|EXCEPTION_ACCESS_VIOLATION_READ (14 crashes) (above #300 top crasher)
        100% (14/14) vs.   0% (251/57826) 3.2.1.8

Only Speedbit Accelerator 3.2.1.6 must be blocklisted as the other crash signatures are not top crashers.
Assignee: nobody → fligtar
I installed Speedbit Accelerator and found that it installed an extension, but couldn't find any plugins.

The extension it installed is:
SpeedBit Video Downloader 2.3.1
{0329E7D6-6F54-462D-93F6-F5C3118BADF2}

Is this what's loading the dll and causing the problem, or what? If so, what versions of the extension need to be blocked that can load Accelerator.dll 3.2.1.6, or is it any version of the extension?
> If so, what versions of the extension need to be blocked that can load
> Accelerator.dll 3.2.1.6, or is it any version of the extension?
The current extension beta version is 3.2.1.9 http://www.videoaccelerator.com/beta/
(In reply to comment #16)
> > If so, what versions of the extension need to be blocked that can load
> > Accelerator.dll 3.2.1.6, or is it any version of the extension?
> The current extension beta version is 3.2.1.9
> http://www.videoaccelerator.com/beta/

I don't think I understand what you mean by this. Can you tell me which versions of the extension are causing the crash?
Whiteboard: [softblocker][Needs block ranges][Block planned for 2/8] → [softblocker][Needs block ranges][Block planned for 2/9]
In reply to comment 17
> I don't think I understand what you mean by this.
The dll associated to the extension has the same version as the extension. So the extension blocklisting is enough.

> Can you tell me which versions of the extension are causing the crash?
This bug gathers several crashes with SpeedBit accelerator, but the goal of blocklisting is only to prevent top crasher.
According to comment 14:
* 3.2.1.6 causes 224 (=78+146) crashes/day in Beta 10.
* 3.2.1.7 causes 2 crashes/day in Beta 10.
* 3.2.1.8 causes 24 (=10+14) crashes/day in Beta 10.
So the blocklisting should be:
extension id: {0329E7D6-6F54-462D-93F6-F5C3118BADF2}
version: 3.2.1.6
Firefox versions: 3.7a1pre and higher
I understand that 3.2.1.6 is dll version we want to block, but the extension version is not the same. I installed version 3.2.1.6 of Speedbit Accelerator and it installed version 2.3.1 of the extension.
> I installed version 3.2.1.6 of Speedbit Accelerator and it installed version > 2.3.1 of the extension.
After further investigations, I found that this dll is shared by 2 products from Speedbit: Download Accelerator Plus and Video Accelerator.
So the blocklisting should be done according to the dll version.

Here are extension version correlations by crash signature (I removed the no longer correlated ones):
* RtlpWaitForCriticalSection | RtlEnterCriticalSection|EXCEPTION_ACCESS_VIOLATION_WRITE (260 crashes)
     38% (99/260) vs.   1% (897/60351) {F17C1572-C9EC-4e5c-A542-D05CBB5C5A08} (Download Accelerator Plus Component, https://addons.mozilla.org/addon/11720)
         36% (93/260) vs.   1% (802/60351) 9.5.0.0

*  RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c|EXCEPTION_ACCESS_VIOLATION_WRITE (67 crashes)
     66% (44/67) vs.   1% (897/60351) {F17C1572-C9EC-4e5c-A542-D05CBB5C5A08} (Download Accelerator Plus Component, https://addons.mozilla.org/addon/11720)
         60% (40/67) vs.   1% (802/60351) 9.5.0.0

*   Accelerator.dll@0x57ab0|EXCEPTION_ACCESS_VIOLATION_READ (14 crashes)
     71% (10/14) vs.   1% (897/60351) {F17C1572-C9EC-4e5c-A542-D05CBB5C5A08} (Download Accelerator Plus Component, https://addons.mozilla.org/addon/11720)
         71% (10/14) vs.   1% (802/60351) 9.5.0.0
Summary: Crash [@ RtlpWaitOnCriticalSection | RtlDllShutdownInProgress ][@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] from SpeedBit Accelerator → Crash [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ][@ Accelerator.dll@0x57ab0 ] of Download Accelerator Plus or Video Accelerator from Speedbit
Okay, so this is going on the DLL blocklist and not the add-ons or plugins blocklist, right?

Who takes care of that?
Assignee: fligtar → nobody
Whiteboard: [softblocker][Needs block ranges][Block planned for 2/9] → [softblocker]
Attachment #511487 - Flags: review?(johnath)
Attachment #511487 - Attachment description: Add to Accelerator the dll blocklist → Add to Accelerator to the dll blocklist
(In reply to comment #20)
> > I installed version 3.2.1.6 of Speedbit Accelerator and it installed version > 2.3.1 of the extension.
> After further investigations, I found that this dll is shared by 2 products
> from Speedbit: Download Accelerator Plus and Video Accelerator.
> So the blocklisting should be done according to the dll version.

(In reply to comment #21)
> Okay, so this is going on the DLL blocklist and not the add-ons or plugins
> blocklist, right?
> 
> Who takes care of that?

I do! But I'm not sure we're there yet. The DLL blocklist is a sledgehammer - no user override, no pref, no notification, just straight up prevent the DLL from loading.

I get that there are two extensions, but if they are things that a user might ever legitimately want to download and install, then I think we should be using the Addon blocklist (which allows for user control), not the DLL blocklist, and just add entries for both extensions.

(Aside: we can also use the DLL blocklist to shut down legitimate software if the crashes it introduces happen so early in startup that Firefox never manages to perform a blocklist ping - is that happening here?)

Christian's patch looks correct - withholding r+ until we know it's the right choice, though.

Fligtar - what do you think?
We know the version of the dll that is causing crashes, but we don't know anything about the extension versions. I assume all versions of the extension load whatever version of the dll they find on the computer.

If someone can investigate and tell me what versions of the extension need to be blocked I will be happy to do so, but if we can't figure that out, the options are:
1. block the known crashing dll
2. not do anything

I'm already spending more time on blocklist issues than I can afford to and am willing to take any of those options. I think this is probably a decision for you or whoever marked this a blocker.
In reply to comment 24
> We know the version of the dll that is causing crashes, but we don't know
> anything about the extension versions.
As stated in comment 20, this dll is shared by at least 2 extensions from Speedbit, may be more.
The only correlated Speedbit extension is Download Accelerator Plus 9.5.0.0 and below. The current version of this extension in 9.5.0.4.
Ok...

* {0329E7D6-6F54-462D-93F6-F5C3118BADF2} is SpeedBit Video Downloader
* {F17C1572-C9EC-4e5c-A542-D05CBB5C5A08} is Download Accelerator Plus Component

I think we want to hardblock SpeedBit Video Downloader for versions <= 9.5.0.0.

I think we want to hardblock all versions of Download Accelerator Plus Component, though it looks like the dll likely causes those users to crash on startup (otherwise the addon metadata would have caused it to already be disabled as it isn't compatible with 3.5 let alone 4).
> I think we want to hardblock SpeedBit Video Downloader for versions <= 9.5.0.0.
The extension version of SpeedBit Video Downloader must be <= 2.3.1 (see comment 19)

> I think we want to hardblock all versions of Download Accelerator Plus
> Component
The extension version of SpeedBit Download Accelerator Plus must be <= 9.5.0.0 (see comment 20)
Hi,

The only SpeedBit product that is using Accelerator.dll version 3.2.1.6 is SpeedBit Video Accelerator version 3.2.1.6.

Regards,
Sela
I installed Speedbit Video Accelerator 3.2.1.8 (the current one) and I have no associated extension.
If Speedbit Download Accelerator Plus is in correlations, it is because it is installed at the same time (check box in the installation wizard of Speedbit Video Accelerator)

So we must use the sledge hammer solution, that is to blocklist Accelerator.dll for versions <= 3.2.1.6.
I believe that Accelerator.dll version 3.2.1.6 and not the earlier or later versions of this dll, is causing this bug.
Assignee: nobody → clegnitto
Summary: Crash [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ][@ Accelerator.dll@0x57ab0 ] of Download Accelerator Plus or Video Accelerator from Speedbit → Crash [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ][@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ][@ Accelerator.dll@0x57ab0 ] with Video Accelerator 3.2.1.6 from Speedbit
Attachment #511487 - Flags: review?(johnath) → review+
Keywords: checkin-needed
http://hg.mozilla.org/mozilla-central/rev/a655315b0205
Status: NEW → RESOLVED
Closed: 9 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Crash Signature: [@ RtlpWaitForCriticalSection | RtlEnterCriticalSection ] [@ RtlpWaitOnCriticalSection | RtlpDeCommitFreeBlock | Accelerator.dll@0x56f6c ] [@ Accelerator.dll@0x57ab0 ]
Depends on: 750601
Product: addons.mozilla.org → Toolkit
You need to log in before you can comment on or make changes to this bug.