Closed Bug 708935 Opened 13 years ago Closed 13 years ago

Assertion nsStandardURL not threadsafe

Categories

(Core :: Networking, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla12
Tracking Status
firefox10 --- wontfix
firefox11 - affected

People

(Reporter: khuey, Assigned: benjamin)

References

Details

(Keywords: assertion, regression)

Attachments

(1 file)

###!!! ASSERTION: nsStandardURL not thread-safe: '_mOwningThread.GetThread() == PR_GetCurrentThread()', file c:/dev/mozilla-central/netwerk/base/src/nsStandardURL.cpp, line 966 xul!nsCOMPtr<nsIURI>::~nsCOMPtr<nsIURI>+0x000000000000003B (c:\dev\mozilla-central\obj-i686-pc-mingw32\dist\include\nscomptr.h, line 561) xul!PendingPACQuery::~PendingPACQuery+0x0000000000000028 xul!PendingPACQuery::`scalar deleting destructor'+0x000000000000000F xul!PendingPACQuery::Release+0x000000000000008A (c:\dev\mozilla-central\netwerk\base\src\nspacman.cpp, line 103) xul!nsCOMPtr<nsIDNSListener>::~nsCOMPtr<nsIDNSListener>+0x000000000000003B (c:\dev\mozilla-central\obj-i686-pc-mingw32\dist\include\nscomptr.h, line 561) xul!`anonymous namespace'::DNSListenerProxy::~DNSListenerProxy+0x000000000000001 D xul!`anonymous namespace'::DNSListenerProxy::`scalar deleting destructor'+0x0000 00000000000F xul!`anonymous namespace'::DNSListenerProxy::Release+0x000000000000008D (c:\dev\mozilla-central\netwerk\dns\nsdnsservice2.cpp, line 512) xul!nsCOMPtr<nsIDNSListener>::assign_assuming_AddRef+0x0000000000000059 (c:\dev\mozilla-central\obj-i686-pc-mingw32\dist\include\nscomptr.h, line 546) xul!nsCOMPtr<nsIDNSListener>::assign_with_AddRef+0x0000000000000027 (c:\dev\mozilla-central\obj-i686-pc-mingw32\dist\include\nscomptr.h, line 1202) xul!nsCOMPtr<nsIDNSListener>::operator=+0x0000000000000013 (c:\dev\mozilla-central\obj-i686-pc-mingw32\dist\include\nscomptr.h, line 691) xul!nsDNSAsyncRequest::OnLookupComplete+0x00000000000000DF (c:\dev\mozilla-central\netwerk\dns\nsdnsservice2.cpp, line 310) xul!nsHostResolver::OnLookupComplete+0x000000000000025B (c:\dev\mozilla-central\netwerk\dns\nshostresolver.cpp, line 888) xul!nsHostResolver::ThreadFunc+0x00000000000000CD (c:\dev\mozilla-central\netwerk\dns\nshostresolver.cpp, line 922) nspr4!_PR_NativeRunThread+0x00000000000000DB (c:\dev\mozilla-central\nsprpub\pr\src\threads\combined\pruthr.c, line 426) nspr4!pr_root+0x0000000000000019 (c:\dev\mozilla-central\nsprpub\pr\src\md\windows\w95thred.c, line 122) MSVCR100D!beginthreadex+0x0000000000000243 MSVCR100D!beginthreadex+0x00000000000001D4 kernel32!BaseThreadInitThunk+0x0000000000000012 ntdll!RtlInitializeExceptionChain+0x0000000000000063 ntdll!RtlInitializeExceptionChain+0x0000000000000036 This is fallout from Bug 675221, I think.
There are other bugs related to this assertion. Which case is this bug about?
Version: unspecified → Trunk
The case that's a regression from Bug 675221.
Assignee: nobody → benjamin
Status: NEW → ASSIGNED
Comment on attachment 583146 [details] [diff] [review] Proxy potential last-release of nsIDNSListener to the main thread, rev. 1 thanks!
Attachment #583146 - Flags: review?(mcmanus) → review+
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla12
Comment on attachment 583146 [details] [diff] [review] Proxy potential last-release of nsIDNSListener to the main thread, rev. 1 [Approval Request Comment] Regression caused by (bug #): (bug 675221, but) fixes older assertion too. User impact if declined: (I'm not sure, except) SeaMonkey bug 710776 perma-orange. Testing completed (on m-c, etc.): comment 6 and (SeaMonkey) bug 710776 comment 2. Risk to taking this patch (and alternatives if risky): I assume this is low risk. But I defer to Benjamin to assess whether this patch is applicable/suitable for branches.
Attachment #583146 - Flags: approval-mozilla-beta?
Attachment #583146 - Flags: approval-mozilla-aurora?
We'll hold in the queue for a risk assessment from Benjamin.
This patch is not especially risky but also probably an unusual case: I'd definitely take it on aurora, but would probably take it on beta if there is evidence of crashes in the relevant code (pendingpacquery or dnslistenerproxy signatures). There appear to be two crash reports on PendingPACQuery which could possibly related, and a few signatures related to async DNS lookups which are present in 9.0.1 and 3.6.*. So I don't know how to interpret that data ;-)
Comment on attachment 583146 [details] [diff] [review] Proxy potential last-release of nsIDNSListener to the main thread, rev. 1 Discussed in triage - yes for aurora, but feels late in beta to take something whose downside, if we introduced a bug, might be difficult to detect (spread out crash signatures, etc)
Attachment #583146 - Flags: approval-mozilla-beta?
Attachment #583146 - Flags: approval-mozilla-beta-
Attachment #583146 - Flags: approval-mozilla-aurora?
Attachment #583146 - Flags: approval-mozilla-aurora+
This is fixed on Aurora 12. The same rationale applies for why we wouldn't want to take this on Beta yet. We'll let it ride the trains.
Attachment #583146 - Flags: approval-mozilla-aurora+ → approval-mozilla-aurora-
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: