Closed Bug 971094 Opened 11 years ago Closed 11 years ago

Nightly crashing on shutdown under js::jit::StopAllOffThreadCompilations

Categories

(Core :: JavaScript Engine, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla30

People

(Reporter: Irving, Assigned: ehoogeveen)

References

Details

Attachments

(2 files, 6 obsolete files)

2.45 KB, patch
ehoogeveen
: review+
Details | Diff | Splinter Review
1.82 KB, patch
ehoogeveen
: review+
Details | Diff | Splinter Review
My last three Nightly updates have brought up Mac OS X "Nightly quit unexpectedly" reports, though the updated browser starts up properly. Here's the report: Process: firefox [51593] Path: /Applications/FirefoxNightly.app/Contents/MacOS/firefox Identifier: org.mozilla.nightly Version: 30.0a1 (3014.2.10) Code Type: X86-64 (Native) Parent Process: ??? [1] User ID: 501 Date/Time: 2014-02-11 12:57:43.066 -0500 OS Version: Mac OS X 10.8.5 (12F45) Report Version: 10 Sleep/Wake UUID: 733E5280-0499-44F8-9988-5E1323C265B6 Interval Since Last Report: 39254 sec Crashes Since Last Report: 1 Per-App Interval Since Last Report: 39230 sec Per-App Crashes Since Last Report: 1 Anonymous UUID: 897C5300-2DBD-1EBF-695C-45E14DF340BB Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000038 VM Regions Near 0x38: --> __TEXT 0000000100000000-0000000100006000 [ 24K] r-x/rwx SM=COW /Applications/FirefoxNightly.app/Contents.bak/MacOS/firefox [/Applications/FirefoxNightly.app/Contents/MacOS/firefox] Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libnss3.dylib 0x0000000101113d48 pt_PostNotifies + 200 1 libnss3.dylib 0x0000000101113c5e PR_Unlock + 78 2 XUL 0x00000001036c8aa3 js::jit::StopAllOffThreadCompilations(JSCompartment*) + 35 3 XUL 0x00000001036c8b58 js::jit::InvalidateAll(js::FreeOp*, JS::Zone*) + 56 4 XUL 0x0000000103811c23 js::ReleaseAllJITCode(js::FreeOp*) + 115 5 XUL 0x000000010390057f js::EnableRuntimeProfilingStack(JSRuntime*, bool) + 47 6 XUL 0x0000000102e0c176 mozilla_sampler_stop() + 150 7 XUL 0x0000000102e0bab3 mozilla_sampler_shutdown() + 483 8 XUL 0x0000000102e9fbfc XREMain::XRE_main(int, char**, nsXREAppData const*) + 956 9 XUL 0x0000000102e9fd17 XRE_main + 231 10 org.mozilla.nightly 0x0000000100001dff main + 1519 11 org.mozilla.nightly 0x00000001000014b4 start + 52 Thread 1:: Dispatch queue: com.apple.libdispatch-manager 0 libsystem_kernel.dylib 0x00007fff86830d16 kevent + 10 1 libdispatch.dylib 0x00007fff9119bdea _dispatch_mgr_invoke + 883 2 libdispatch.dylib 0x00007fff9119b9ee _dispatch_mgr_thread + 54 Thread 2:: JS GC Helper 0 libsystem_kernel.dylib 0x00007fff868300fa __psynch_cvwait + 10 1 libsystem_c.dylib 0x00007fff86184fb9 _pthread_cond_wait + 869 2 libnss3.dylib 0x0000000101113eb9 PR_WaitCondVar + 105 3 XUL 0x000000010380f26b js::GCHelperThread::threadLoop() + 107 4 libnss3.dylib 0x00000001011163ea _pt_root + 218 5 libsystem_c.dylib 0x00007fff86180772 _pthread_start + 327 6 libsystem_c.dylib 0x00007fff8616d1a1 thread_start + 13 Thread 3: 0 libsystem_kernel.dylib 0x00007fff8682e686 mach_msg_trap + 10 1 libsystem_kernel.dylib 0x00007fff8682dc42 mach_msg + 70 2 XUL 0x00000001036253b0 AsmJSMachExceptionHandlerThread(void*) + 528 3 libnss3.dylib 0x00000001011163ea _pt_root + 218 4 libsystem_c.dylib 0x00007fff86180772 _pthread_start + 327 5 libsystem_c.dylib 0x00007fff8616d1a1 thread_start + 13 Thread 4:: JS Watchdog 0 libsystem_kernel.dylib 0x00007fff868300fa __psynch_cvwait + 10 1 libsystem_c.dylib 0x00007fff86184fb9 _pthread_cond_wait + 869 2 libnss3.dylib 0x0000000101113f4a PR_WaitCondVar + 250 3 XUL 0x00000001021d2078 WatchdogMain(void*) + 168 4 libnss3.dylib 0x00000001011163ea _pt_root + 218 5 libsystem_c.dylib 0x00007fff86180772 _pthread_start + 327 6 libsystem_c.dylib 0x00007fff8616d1a1 thread_start + 13 Thread 5: 0 libsystem_kernel.dylib 0x00007fff868306d6 __workq_kernreturn + 10 1 libsystem_c.dylib 0x00007fff86182f1c _pthread_workq_return + 25 2 libsystem_c.dylib 0x00007fff86182ce3 _pthread_wqthread + 412 3 libsystem_c.dylib 0x00007fff8616d191 start_wqthread + 13 Thread 6: 0 libsystem_kernel.dylib 0x00007fff868306d6 __workq_kernreturn + 10 1 libsystem_c.dylib 0x00007fff86182f1c _pthread_workq_return + 25 2 libsystem_c.dylib 0x00007fff86182ce3 _pthread_wqthread + 412 3 libsystem_c.dylib 0x00007fff8616d191 start_wqthread + 13 Thread 7: 0 libsystem_kernel.dylib 0x00007fff868306d6 __workq_kernreturn + 10 1 libsystem_c.dylib 0x00007fff86182f1c _pthread_workq_return + 25 2 libsystem_c.dylib 0x00007fff86182ce3 _pthread_wqthread + 412 3 libsystem_c.dylib 0x00007fff8616d191 start_wqthread + 13 Thread 0 crashed with X86 Thread State (64-bit): rax: 0x00000000ffffffff rbx: 0x00007fff5fbfea88 rcx: 0x00000000ffffffff rdx: 0x0000000000000000 rdi: 0x0000000100527c80 rsi: 0x0000000000000016 rbp: 0x00007fff5fbfeb10 rsp: 0x00007fff5fbfea70 r8: 0x0000000000000000 r9: 0x000000000000000e r10: 0x0000000000000003 r11: 0x0000000000000246 r12: 0x0000000000000000 r13: 0x000000010d533f98 r14: 0x00007fff5fbfea78 r15: 0x0000000000000000 rip: 0x0000000101113d48 rfl: 0x0000000000010246 cr2: 0x0000000000000038 Logical CPU: 6 Binary Images: 0x100000000 - 0x100005fff +org.mozilla.nightly (30.0a1 - 3014.2.11) <57AB9BD9-E012-3B05-82CB-E38BAC08C5F1> /Applications/FirefoxNightly.app/Contents/MacOS/firefox 0x10000f000 - 0x100011fff com.apple.ExceptionHandling (1.5 - 10) <7A487C6B-6E23-3059-84C7-8739399D4707> /System/Library/Frameworks/ExceptionHandling.framework/Versions/A/ExceptionHandling 0x100016000 - 0x10002eff7 +libmozglue.dylib (1) <C782407D-4647-33C4-8FA6-BB159DEF4F34> /Applications/FirefoxNightly.app/Contents/MacOS/libmozglue.dylib 0x1000cc000 - 0x1000ccff7 +libmozalloc.dylib (1) <C1601230-2EBB-3E8B-8539-9010524D5416> /Applications/FirefoxNightly.app/Contents/MacOS/libmozalloc.dylib 0x101000000 - 0x101245fff +libnss3.dylib (1) <A9B8C5CB-893A-3A64-A67A-4F86997AAF30> /Applications/FirefoxNightly.app/Contents/MacOS/libnss3.dylib 0x101377000 - 0x105157fdf +XUL (1) <BECD0D61-A9B1-3D03-AED1-031C369F5712> /Applications/FirefoxNightly.app/Contents/MacOS/XUL 0x108498000 - 0x1084b1fff +libbrowsercomps.dylib (???) <3CE118AC-9F59-387F-B955-4726EA3EAB34> /Applications/FirefoxNightly.app/Contents/MacOS/browser/components/libbrowsercomps.dylib 0x1084f5000 - 0x1084f6ffa +cl_kernels (???) <A614AD3F-5C2A-41E5-B4A3-BF940EDFD1BB> cl_kernels 0x10aaa8000 - 0x10aae0ff7 +libsoftokn3.dylib (1) <C046A791-30A6-32AA-90B9-8ED3ECC48E23> /Applications/FirefoxNightly.app/Contents/MacOS/libsoftokn3.dylib 0x10ae83000 - 0x10aea4ff7 +libnssdbm3.dylib (1) <3046386D-5741-3239-951B-1D8219DE2FEC> /Applications/FirefoxNightly.app/Contents/MacOS/libnssdbm3.dylib 0x10b24e000 - 0x10b2b1ff7 +libfreebl3.dylib (1) <9273ABB6-A98B-335B-A5BD-9FE7ECBE9AF6> /Applications/FirefoxNightly.app/Contents/MacOS/libfreebl3.dylib 0x10f0ef000 - 0x10f0f8fe7 libcldcpuengine.dylib (2.2.16) <B6E3B14B-1EAC-3FDD-8AED-87231A033BED> /System/Library/Frameworks/OpenCL.framework/Libraries/libcldcpuengine.dylib 0x10f8ce000 - 0x10f8cfffb +cl_kernels (???) <F4EDDB56-C28A-47F9-BAD3-78D560D978F1> cl_kernels 0x10f8d6000 - 0x10f8d7ffb +cl_kernels (???) <85F7018A-7A8C-4E92-8192-A5062B7174A1> cl_kernels 0x10f8e2000 - 0x10f8e2ff9 +cl_kernels (???) <A76A3C39-98B6-4D50-8C62-6AC3ED9630EB> cl_kernels 0x10f8fd000 - 0x10f8fdffc +cl_kernels (???) <5F6D962B-27D7-46D9-960B-C5D090C1951E> cl_kernels 0x110bce000 - 0x110bceff7 +cl_kernels (???) <4FD1402F-F700-47BF-83D5-2575255FC4EE> cl_kernels 0x110bd2000 - 0x110bd2ffc +cl_kernels (???) <5F6D962B-27D7-46D9-960B-C5D090C1951E> cl_kernels 0x110bd7000 - 0x110bd7ffe +cl_kernels (???) <15BDEAD6-B5BD-44B9-9A22-C9088D6DE909> cl_kernels 0x110bfc000 - 0x110bfcffb +cl_kernels (???) <E738FDC3-8773-4B96-AE48-E94CE0D0DFCB> cl_kernels 0x1111df000 - 0x1111dfffd +cl_kernels (???) <EE105610-63D5-4336-83B5-84E6D63D18B1> cl_kernels 0x1111e4000 - 0x1111e4ffd +cl_kernels (???) <FFE3CF3E-E59B-4C46-B38D-FB6A357E2052> cl_kernels 0x1111ec000 - 0x1111ecffd +cl_kernels (???) <75E727E0-ECAF-4BE3-A8BE-4702E896F245> cl_kernels 0x11ced5000 - 0x11cedcfff com.apple.URLMount.AFPPlugin (5.0 - 5.0) <1EC15ABF-4216-3869-A341-F27D5E55FCDC> /System/Library/Filesystems/NetFSPlugins/afp.bundle/Contents/MacOS/afp 0x11cee3000 - 0x11ceedff7 com.apple.AppleSRP (5.0 - 1) <16B1431A-295A-386B-9159-A396877D6FE3> /System/Library/PrivateFrameworks/AppleSRP.framework/Versions/A/AppleSRP 0x11d0b3000 - 0x11d0d7ff7 com.apple.security.csparser (3.0 - 55179.13) <B85553DE-708C-3C20-93D5-70DC80068CE3> /System/Library/Frameworks/Security.framework/PlugIns/csparser.bundle/Contents/MacOS/csparser 0x1255ef000 - 0x125689ff7 unorm8_bgra.dylib (2.2.16) <5D62BED8-DF5D-3C51-94B4-57368FF10DDB> /System/Library/Frameworks/OpenCL.framework/Libraries/ImageFormats/unorm8_bgra.dylib 0x125937000 - 0x12597ffff com.apple.AppleShareClientCore (3.0 - 3.0) <FC258BF0-F008-386F-AF57-597E18B02BFD> /System/Library/Frameworks/AppleShareClientCore.framework/Versions/A/AppleShareClientCore 0x12882a000 - 0x128846ff7 libJapaneseConverter.dylib (61) <D0F762C2-5372-3AA2-BBA4-066B8E4B1F8E> /System/Library/CoreServices/Encodings/libJapaneseConverter.dylib 0x145da1000 - 0x145e3aff7 unorm8_argb.dylib (2.2.16) <AC4A19D0-44A5-34CB-9248-20996ACA6B06> /System/Library/Frameworks/OpenCL.framework/Libraries/ImageFormats/unorm8_argb.dylib 0x7fff69c32000 - 0x7fff69c6693f dyld (210.2.3) <36CAA36E-72BC-3E48-96D9-B96A2DF77730> /usr/lib/dyld 0x7fff856b6000 - 0x7fff856c8ff7 libz.1.dylib (43) <2A1551E8-A272-3DE5-B692-955974FE1416> /usr/lib/libz.1.dylib 0x7fff856c9000 - 0x7fff85b05fff com.apple.VideoToolbox (1.0 - 926.106) <B1185D9D-02AC-3D27-B894-21B1179F2AEF> /System/Library/Frameworks/VideoToolbox.framework/Versions/A/VideoToolbox 0x7fff85b06000 - 0x7fff85b2dff7 com.apple.PerformanceAnalysis (1.16 - 16) <1BDA3662-18B7-3F38-94E5-9ACD477A7682> /System/Library/PrivateFrameworks/PerformanceAnalysis.framework/Versions/A/PerformanceAnalysis 0x7fff85b2e000 - 0x7fff85b2efff libOpenScriptingUtil.dylib (148.3) <F8681222-0969-3B10-8BCE-C55A4B9C520C> /usr/lib/libOpenScriptingUtil.dylib 0x7fff85b2f000 - 0x7fff85bd5ff7 com.apple.CoreServices.OSServices (557.6 - 557.6) <FFDDD2D8-690D-388F-A48F-4750A792D2CD> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/OSServices.framework/Versions/A/OSServices 0x7fff85c00000 - 0x7fff85c69fff libstdc++.6.dylib (56) <EAA2B53E-EADE-39CF-A0EF-FB9D4940672A> /usr/lib/libstdc++.6.dylib 0x7fff85c6a000 - 0x7fff85d8afff com.apple.desktopservices (1.7.4 - 1.7.4) <ED3DA8C0-160F-3CDC-B537-BF2E766AB7C1> /System/Library/PrivateFrameworks/DesktopServicesPriv.framework/Versions/A/DesktopServicesPriv 0x7fff85d8b000 - 0x7fff85deefff com.apple.audio.CoreAudio (4.1.2 - 4.1.2) <FEAB83AB-1DE5-3813-BA48-7A7F2374CCF0> /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio 0x7fff85e2e000 - 0x7fff85e39fff libsystem_notify.dylib (98.5) <C49275CC-835A-3207-AFBA-8C01374927B6> /usr/lib/system/libsystem_notify.dylib 0x7fff85e3a000 - 0x7fff85e96ff7 com.apple.Symbolication (1.3 - 93) <D3AAB36A-D5EB-3044-BE9D-0B77E64C00FC> /System/Library/PrivateFrameworks/Symbolication.framework/Versions/A/Symbolication 0x7fff85ee1000 - 0x7fff85f0dfff com.apple.quartzfilters (1.8.0 - 1.7.0) <CCF2C41D-93D0-3547-A2B1-D6A69932CADF> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuartzFilters.framework/Versions/A/QuartzFilters 0x7fff85f0e000 - 0x7fff85f0fff7 libSystem.B.dylib (169.3) <92475A81-385C-32B9-9D6D-38E4BAC90996> /usr/lib/libSystem.B.dylib 0x7fff85f10000 - 0x7fff8616bff7 com.apple.QuartzComposer (5.1 - 287.1) <D1DD68D1-05D5-3037-ABB6-BF6EB183C155> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuartzComposer.framework/Versions/A/QuartzComposer 0x7fff8616c000 - 0x7fff86238ff7 libsystem_c.dylib (825.40.1) <543B05AE-CFA5-3EFE-8E58-77225411BA6B> /usr/lib/system/libsystem_c.dylib 0x7fff86248000 - 0x7fff862d5ff7 com.apple.SearchKit (1.4.0 - 1.4.0) <54A8069C-E497-3B07-BEA7-D3BC9DB5B649> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/SearchKit.framework/Versions/A/SearchKit 0x7fff862d6000 - 0x7fff86316ff7 com.apple.MediaKit (14 - 687) <8AAA8CC3-3ACD-34A5-9E57-9B24AD8AFD4D> /System/Library/PrivateFrameworks/MediaKit.framework/Versions/A/MediaKit 0x7fff86334000 - 0x7fff8633fff7 com.apple.bsd.ServiceManagement (2.0 - 2.0) <C12962D5-85FB-349E-AA56-64F4F487F219> /System/Library/Frameworks/ServiceManagement.framework/Versions/A/ServiceManagement 0x7fff86340000 - 0x7fff8634eff7 libkxld.dylib (2050.48.12) <B8F7ED1F-CF84-3777-9183-0A1C513DF81F> /usr/lib/system/libkxld.dylib 0x7fff8634f000 - 0x7fff86366fff com.apple.GenerationalStorage (1.1 - 132.3) <FD4A84B3-13A8-3C60-A59E-25A361447A17> /System/Library/PrivateFrameworks/GenerationalStorage.framework/Versions/A/GenerationalStorage 0x7fff8636d000 - 0x7fff864bffff com.apple.audio.toolbox.AudioToolbox (1.9.2 - 1.9.2) <DC5F3D1B-036A-37DE-BC24-7636DC95EA1C> /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox 0x7fff864cd000 - 0x7fff864d1fff com.apple.IOSurface (86.0.4 - 86.0.4) <26F01CD4-B76B-37A3-989D-66E8140542B3> /System/Library/Frameworks/IOSurface.framework/Versions/A/IOSurface 0x7fff864d2000 - 0x7fff86508ff7 libsystem_info.dylib (406.17) <C9BA1024-043C-3BD5-908F-AF709E05DEE4> /usr/lib/system/libsystem_info.dylib 0x7fff86509000 - 0x7fff8660bfff libcrypto.0.9.8.dylib (47.2) <CF3BAB7E-4972-39FD-AF92-28ACAFF0873E> /usr/lib/libcrypto.0.9.8.dylib 0x7fff8660c000 - 0x7fff86623fff com.apple.CFOpenDirectory (10.8 - 151.10) <10F41DA4-AD54-3F52-B898-588D9A117171> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/Frameworks/CFOpenDirectory.framework/Versions/A/CFOpenDirectory 0x7fff86624000 - 0x7fff86626fff libCVMSPluginSupport.dylib (8.10.1) <F0239392-E0CB-37D7-BFE2-D6F5D42F9196> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCVMSPluginSupport.dylib 0x7fff86627000 - 0x7fff86673ff7 libauto.dylib (185.4) <AD5A4CE7-CB53-313C-9FAE-673303CC2D35> /usr/lib/libauto.dylib 0x7fff86674000 - 0x7fff86769fff libiconv.2.dylib (34) <FEE8B996-EB44-37FA-B96E-D379664DEFE1> /usr/lib/libiconv.2.dylib 0x7fff8676a000 - 0x7fff86777fff com.apple.AppleFSCompression (49 - 1.0) <E616053D-D3C2-3600-B8DF-A5E0D9665634> /System/Library/PrivateFrameworks/AppleFSCompression.framework/Versions/A/AppleFSCompression 0x7fff86778000 - 0x7fff86778fff com.apple.Carbon (154 - 155) <1B2846B1-384E-3D1C-8999-201215723349> /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon 0x7fff86779000 - 0x7fff867d3ff7 com.apple.opencl (2.2.19 - 2.2.19) <3C7DFB2C-B3F9-3447-A1FC-EAAA42181A6E> /System/Library/Frameworks/OpenCL.framework/Versions/A/OpenCL 0x7fff8681c000 - 0x7fff8681dff7 libsystem_sandbox.dylib (220.3) <B739DA63-B675-387A-AD84-412A651143C0> /usr/lib/system/libsystem_sandbox.dylib 0x7fff8681e000 - 0x7fff86839ff7 libsystem_kernel.dylib (2050.48.12) <4B7993C3-F62D-3AC1-AF92-414A0D6EED5E> /usr/lib/system/libsystem_kernel.dylib 0x7fff8683a000 - 0x7fff8685fff7 libc++abi.dylib (26) <D86169F3-9F31-377A-9AF3-DB17142052E4> /usr/lib/libc++abi.dylib 0x7fff86860000 - 0x7fff86862ff7 com.apple.print.framework.Print (8.0 - 258) <8F243E49-021F-3892-B555-3010A7F450A2> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print 0x7fff86863000 - 0x7fff86866fff com.apple.help (1.3.2 - 42) <418A9A41-BCB4-32A2-97ED-3A388F69CA9D> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Help.framework/Versions/A/Help 0x7fff86867000 - 0x7fff86878ff7 libsasl2.2.dylib (166) <649CAE0E-8FFE-3C60-A849-BE6300E4B726> /usr/lib/libsasl2.2.dylib 0x7fff86879000 - 0x7fff868b3ff7 com.apple.GSS (3.0 - 2.0) <423BDFCC-9187-3F3E-ABB0-D280003EB15E> /System/Library/Frameworks/GSS.framework/Versions/A/GSS 0x7fff869df000 - 0x7fff86ab1ff7 com.apple.CoreText (260.0 - 275.17) <AB493289-E188-3CCA-8658-1E5039715F82> /System/Library/Frameworks/CoreText.framework/Versions/A/CoreText 0x7fff86ab2000 - 0x7fff86aebff7 libssl.0.9.8.dylib (47.2) <46DF85DC-18FB-3108-91F6-52AE3EBF2347> /usr/lib/libssl.0.9.8.dylib 0x7fff86b7d000 - 0x7fff86b84fff libcopyfile.dylib (89) <876573D0-E907-3566-A108-577EAD1B6182> /usr/lib/system/libcopyfile.dylib 0x7fff86b85000 - 0x7fff86ba4ff7 libresolv.9.dylib (51) <0882DC2D-A892-31FF-AD8C-0BB518C48B23> /usr/lib/libresolv.9.dylib 0x7fff86dee000 - 0x7fff86ea1ff7 com.apple.PDFKit (2.8.5 - 2.8.5) <EAAED40E-7B2C-3312-826E-26A9DEDBF0FC> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/PDFKit.framework/Versions/A/PDFKit 0x7fff86fcf000 - 0x7fff86fd0ff7 libdnsinfo.dylib (453.19) <14202FFB-C3CA-3FCC-94B0-14611BF8692D> /usr/lib/system/libdnsinfo.dylib 0x7fff86fd1000 - 0x7fff86ff0ff7 com.apple.ChunkingLibrary (2.0 - 133.3) <8BEC9AFB-DCAA-37E8-A5AB-24422B234ECF> /System/Library/PrivateFrameworks/ChunkingLibrary.framework/Versions/A/ChunkingLibrary 0x7fff86ff1000 - 0x7fff87272fff com.apple.AOSKit (1.051 - 152.4) <01C09924-2603-3C1E-97F7-9484CBA35BC9> /System/Library/PrivateFrameworks/AOSKit.framework/Versions/A/AOSKit 0x7fff87273000 - 0x7fff87276ff7 libdyld.dylib (210.2.3) <F59367C9-C110-382B-A695-9035A6DD387E> /usr/lib/system/libdyld.dylib 0x7fff87277000 - 0x7fff87279fff com.apple.TrustEvaluationAgent (2.0 - 23) <A97D348B-32BF-3E52-8DF2-59BFAD21E1A3> /System/Library/PrivateFrameworks/TrustEvaluationAgent.framework/Versions/A/TrustEvaluationAgent 0x7fff8727a000 - 0x7fff874afff7 com.apple.CoreData (106.1 - 407.7) <A676E1A4-2144-376B-92B8-B450DD1D78E5> /System/Library/Frameworks/CoreData.framework/Versions/A/CoreData 0x7fff874b0000 - 0x7fff87754ff7 com.apple.CoreImage (8.4.0 - 1.0.1) <CC6DD22B-FFC6-310B-BE13-2397A02C79EF> /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/CoreImage.framework/Versions/A/CoreImage 0x7fff877ac000 - 0x7fff878c5fff com.apple.ImageIO.framework (3.2.2 - 851) <6552C673-9F29-3B31-A12E-C4391A950965> /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO 0x7fff878c6000 - 0x7fff88256627 com.apple.CoreGraphics (1.600.0 - 333.1) <C085C074-7260-3C3D-90C6-A65D3CB2BD41> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics 0x7fff882d9000 - 0x7fff88590ff7 com.apple.MediaToolbox (1.0 - 926.106) <57043584-98E7-375A-89AE-F46480AA5D97> /System/Library/Frameworks/MediaToolbox.framework/Versions/A/MediaToolbox 0x7fff88591000 - 0x7fff885edfff com.apple.QuickLookFramework (4.0 - 555.5) <8B9EAC35-98F3-3BF0-8B15-3A5FE39F150A> /System/Library/Frameworks/QuickLook.framework/Versions/A/QuickLook 0x7fff8864c000 - 0x7fff886b9ff7 com.apple.datadetectorscore (4.1 - 269.3) <5775F0DB-87D6-310D-8B03-E2AD729EFB28> /System/Library/PrivateFrameworks/DataDetectorsCore.framework/Versions/A/DataDetectorsCore 0x7fff88773000 - 0x7fff88773fff com.apple.AOSMigrate (1.0 - 1) <9E7A92DC-649D-3908-BB36-B7F445261F14> /System/Library/PrivateFrameworks/AOSMigrate.framework/Versions/A/AOSMigrate 0x7fff88774000 - 0x7fff88b6bfff libLAPACK.dylib (1073.4) <D632EC8B-2BA0-3853-800A-20DA00A1091C> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libLAPACK.dylib 0x7fff88b6c000 - 0x7fff88b74fff liblaunch.dylib (442.26.2) <2F71CAF8-6524-329E-AC56-C506658B4C0C> /usr/lib/system/liblaunch.dylib 0x7fff88b76000 - 0x7fff88b76fff com.apple.Cocoa (6.7 - 19) <3CFC90D2-2BE9-3E5C-BFDB-5E161A2C2B29> /System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa 0x7fff88b77000 - 0x7fff88ba1ff7 com.apple.CoreVideo (1.8 - 99.4) <E5082966-6D81-3973-A05A-38AA5B85F886> /System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo 0x7fff88ba2000 - 0x7fff88bf3ff7 com.apple.SystemConfiguration (1.12.2 - 1.12.2) <581BF463-C15A-363B-999A-E830222FA925> /System/Library/Frameworks/SystemConfiguration.framework/Versions/A/SystemConfiguration 0x7fff88bf4000 - 0x7fff88c4afff com.apple.HIServices (1.20 - 417) <BCD36950-013F-35C2-918E-05A93A47BE8C> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/HIServices 0x7fff88c4b000 - 0x7fff88c4cfff liblangid.dylib (116) <864C409D-D56B-383E-9B44-A435A47F2346> /usr/lib/liblangid.dylib 0x7fff88c4d000 - 0x7fff88ca6ff7 com.apple.ImageCaptureCore (5.0.4 - 5.0.4) <84F003C2-5758-3D0A-8644-F3A0BA4F22FC> /System/Library/Frameworks/ImageCaptureCore.framework/Versions/A/ImageCaptureCore 0x7fff88ca7000 - 0x7fff88cfeff7 com.apple.ScalableUserInterface (1.0 - 1) <93C14595-6172-37E9-88F2-CBC80A1C54D0> /System/Library/Frameworks/QuartzCore.framework/Versions/A/Frameworks/ScalableUserInterface.framework/Versions/A/ScalableUserInterface 0x7fff88cff000 - 0x7fff88df0ff7 com.apple.DiskImagesFramework (10.8.3 - 345) <5C56181F-1E9F-336A-B7BB-620565A8BD6E> /System/Library/PrivateFrameworks/DiskImages.framework/Versions/A/DiskImages 0x7fff88df1000 - 0x7fff88dfffff com.apple.Librarian (1.1 - 1) <5AC28666-7642-395F-A923-C6F8A274BBBD> /System/Library/PrivateFrameworks/Librarian.framework/Versions/A/Librarian 0x7fff88e00000 - 0x7fff88e21ff7 libCRFSuite.dylib (33) <B49DA255-A4D9-33AF-95AB-B319570CDF7B> /usr/lib/libCRFSuite.dylib 0x7fff88e85000 - 0x7fff88e88fff libRadiance.dylib (851) <C317B2C7-CA3A-329F-B6DC-7CC33FE08C81> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libRadiance.dylib 0x7fff88e89000 - 0x7fff88ec4fff com.apple.LDAPFramework (2.4.28 - 194.5) <7E4F2C08-0010-34AE-BC46-149B7EE8A0F5> /System/Library/Frameworks/LDAP.framework/Versions/A/LDAP 0x7fff88ec7000 - 0x7fff88f84ff7 com.apple.ColorSync (4.8.0 - 4.8.0) <73BE495D-8985-3B88-A7D0-23DF0CB50304> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ColorSync.framework/Versions/A/ColorSync 0x7fff89000000 - 0x7fff8900cfff com.apple.CrashReporterSupport (10.8.3 - 418) <DE6AFE16-D97E-399D-82ED-3522C773C36E> /System/Library/PrivateFrameworks/CrashReporterSupport.framework/Versions/A/CrashReporterSupport 0x7fff8900d000 - 0x7fff89016ff7 com.apple.CommerceCore (1.0 - 26.2) <AF35874A-6FA7-328E-BE30-8BBEF0B741A8> /System/Library/PrivateFrameworks/CommerceKit.framework/Versions/A/Frameworks/CommerceCore.framework/Versions/A/CommerceCore 0x7fff89017000 - 0x7fff89022ff7 com.apple.ProtocolBuffer (2 - 104) <5BA49EB9-1361-3BFF-856C-C5F1D0486072> /System/Library/PrivateFrameworks/ProtocolBuffer.framework/Versions/A/ProtocolBuffer 0x7fff89023000 - 0x7fff89024fff libDiagnosticMessagesClient.dylib (8) <8548E0DC-0D2F-30B6-B045-FE8A038E76D8> /usr/lib/libDiagnosticMessagesClient.dylib 0x7fff89045000 - 0x7fff89045fff com.apple.ApplicationServices (45 - 45) <5302CC85-D534-3FE5-9E56-CA16762177F6> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/ApplicationServices 0x7fff89046000 - 0x7fff8904bfff com.apple.OpenDirectory (10.8 - 151.10) <1F47EC96-7403-3690-8D8D-C31D3B6FDA0A> /System/Library/Frameworks/OpenDirectory.framework/Versions/A/OpenDirectory 0x7fff8904c000 - 0x7fff8909bff7 libFontRegistry.dylib (100) <F7EC0287-58E4-3ABE-A45E-B105A68EA76E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontRegistry.dylib 0x7fff8909c000 - 0x7fff8909efff com.apple.securityhi (4.0 - 55002) <26E6D477-EF61-351F-BA8C-67824AA231C6> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SecurityHI.framework/Versions/A/SecurityHI 0x7fff8909f000 - 0x7fff890a6fff com.apple.NetFS (5.0 - 4.0) <195D8EC9-72BB-3E04-A64D-E1A89B4850C1> /System/Library/Frameworks/NetFS.framework/Versions/A/NetFS 0x7fff890ac000 - 0x7fff890c0fff com.apple.speech.synthesis.framework (4.1.12 - 4.1.12) <94EDF2AB-809C-3D15-BED5-7AD45B2A7C16> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/SpeechSynthesis.framework/Versions/A/SpeechSynthesis 0x7fff890c1000 - 0x7fff890d8fff libGL.dylib (8.10.1) <F8BABA3C-7810-3A65-83FC-61945AA50E90> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGL.dylib 0x7fff890d9000 - 0x7fff89124fff com.apple.CoreMedia (1.0 - 926.106) <64467905-48DC-37F9-9F32-186768CF2640> /System/Library/Frameworks/CoreMedia.framework/Versions/A/CoreMedia 0x7fff89125000 - 0x7fff89130ff7 com.apple.DisplayServicesFW (2.7.2 - 357) <8AE56B58-A521-3F29-AAE2-10ADADBD30EA> /System/Library/PrivateFrameworks/DisplayServices.framework/Versions/A/DisplayServices 0x7fff89131000 - 0x7fff89139ff7 libsystem_dnssd.dylib (379.38.1) <BDCB8566-0189-34C0-9634-35ABD3EFE25B> /usr/lib/system/libsystem_dnssd.dylib 0x7fff8913a000 - 0x7fff8913eff7 com.apple.TCC (1.0 - 1) <F2F3B753-FC73-3543-8BBE-859FDBB4D6A6> /System/Library/PrivateFrameworks/TCC.framework/Versions/A/TCC 0x7fff8913f000 - 0x7fff894caff7 com.apple.FinderKit (1.1.3 - 1.1.3) <7956AB84-AB7A-3B00-A543-76E5CD708881> /System/Library/PrivateFrameworks/FinderKit.framework/Versions/A/FinderKit 0x7fff894cb000 - 0x7fff894d1fff com.apple.DiskArbitration (2.5.2 - 2.5.2) <C713A35A-360E-36CE-AC0A-25C86A3F50CA> /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration 0x7fff894d2000 - 0x7fff89802fff com.apple.HIToolbox (2.0 - 626.1) <656D08C2-9068-3532-ABDD-32EC5057CCB2> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/HIToolbox 0x7fff89803000 - 0x7fff89862fff com.apple.AE (645.6 - 645.6) <44F403C1-660A-3543-AB9C-3902E02F936F> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/AE.framework/Versions/A/AE 0x7fff89863000 - 0x7fff89afeff7 com.apple.JavaScriptCore (8536 - 8536.30) <FE3C5ADD-43D3-33C9-9150-8DCEFDA218E2> /System/Library/Frameworks/JavaScriptCore.framework/Versions/A/JavaScriptCore 0x7fff89b76000 - 0x7fff89b77fff libsystem_blocks.dylib (59) <D92DCBC3-541C-37BD-AADE-ACC75A0C59C8> /usr/lib/system/libsystem_blocks.dylib 0x7fff89b78000 - 0x7fff89ba0fff libJPEG.dylib (851) <64A3EB03-34FB-308C-817B-6106D1F4D80F> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib 0x7fff89ba1000 - 0x7fff89c22fff com.apple.Metadata (10.7.0 - 707.12) <69E3EEF7-8B7B-3652-8320-B8E885370E56> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Metadata 0x7fff89c25000 - 0x7fff89d3ffff com.apple.coreavchd (5.6.0 - 5600.4.16) <85670361-96CA-3805-B981-B41B47E99A37> /System/Library/PrivateFrameworks/CoreAVCHD.framework/Versions/A/CoreAVCHD 0x7fff89d40000 - 0x7fff89eeefff com.apple.QuartzCore (1.8 - 304.3) <F450F2DE-2F24-3557-98B6-310E05DAC17F> /System/Library/Frameworks/QuartzCore.framework/Versions/A/QuartzCore 0x7fff89eef000 - 0x7fff89f49fff com.apple.Suggestions (2.0 - 102.1) <FB339DEE-9EB2-381E-89AC-1BADE2A1E43C> /System/Library/PrivateFrameworks/Suggestions.framework/Versions/A/Suggestions 0x7fff89f4a000 - 0x7fff89f78ff7 libsystem_m.dylib (3022.6) <11B6081D-6212-3EAB-9975-BED6234BD6A5> /usr/lib/system/libsystem_m.dylib 0x7fff89f79000 - 0x7fff8a2d8fff com.apple.Foundation (6.8 - 945.18) <1D7E58E6-FA3A-3CE8-AC85-B9D06B8C0AA0> /System/Library/Frameworks/Foundation.framework/Versions/C/Foundation 0x7fff8a2d9000 - 0x7fff8a3d6fff libsqlite3.dylib (138.1) <ADE9CB98-D77D-300C-A32A-556B7440769F> /usr/lib/libsqlite3.dylib 0x7fff8a3d7000 - 0x7fff8a4ef92f libobjc.A.dylib (532.2) <90D31928-F48D-3E37-874F-220A51FD9E37> /usr/lib/libobjc.A.dylib 0x7fff8a4f0000 - 0x7fff8a676fff libBLAS.dylib (1073.4) <C102C0F6-8CB6-3B49-BA6B-2EB61F0B2784> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libBLAS.dylib 0x7fff8a677000 - 0x7fff8a948ff7 com.apple.security (7.0 - 55179.13) <F428E306-C407-3B55-BA82-E58755E8A76F> /System/Library/Frameworks/Security.framework/Versions/A/Security 0x7fff8a949000 - 0x7fff8a9b9fff com.apple.ISSupport (1.9.8 - 56) <19436666-D781-3C6A-B091-85BE7316E4B2> /System/Library/PrivateFrameworks/ISSupport.framework/Versions/A/ISSupport 0x7fff8a9ec000 - 0x7fff8aa28fff com.apple.GeoServices (1.0 - 1) <DB382348-EBFA-3AD5-888B-7F4640F41834> /System/Library/PrivateFrameworks/GeoServices.framework/Versions/A/GeoServices 0x7fff8aa29000 - 0x7fff8acd8fff com.apple.imageKit (2.2 - 673) <5F0504DA-7CE9-3D97-B2B5-3C5839AEBF1F> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/ImageKit.framework/Versions/A/ImageKit 0x7fff8aea2000 - 0x7fff8aec9fff com.apple.framework.familycontrols (4.1 - 410) <50F5A52C-8FB6-300A-977D-5CFDE4D5796B> /System/Library/PrivateFrameworks/FamilyControls.framework/Versions/A/FamilyControls 0x7fff8aeca000 - 0x7fff8b2e7fff FaceCoreLight (2.4.1) <DDAFFD7A-D312-3407-A010-5AEF3E17831B> /System/Library/PrivateFrameworks/FaceCoreLight.framework/Versions/A/FaceCoreLight 0x7fff8b2f3000 - 0x7fff8b2f7fff libCoreVMClient.dylib (32.5) <DB009CD4-BB0E-3331-BBB4-A118781D193F> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libCoreVMClient.dylib 0x7fff8b3ae000 - 0x7fff8b42dff7 com.apple.securityfoundation (6.0 - 55115.4) <8676E0DF-295F-3690-BDAA-6C9C1D210B88> /System/Library/Frameworks/SecurityFoundation.framework/Versions/A/SecurityFoundation 0x7fff8b42e000 - 0x7fff8b43bfff com.apple.KerberosHelper (4.0 - 1.0) <A05BB5D6-4C56-36D5-9939-0B119535257F> /System/Library/PrivateFrameworks/KerberosHelper.framework/Versions/A/KerberosHelper 0x7fff8b4d1000 - 0x7fff8b4d7fff libmacho.dylib (829) <BF332AD9-E89F-387E-92A4-6E1AB74BD4D9> /usr/lib/system/libmacho.dylib 0x7fff8b4d8000 - 0x7fff8b4e6fff libcommonCrypto.dylib (60027) <BAAFE0C9-BB86-3CA7-88C0-E3CBA98DA06F> /usr/lib/system/libcommonCrypto.dylib 0x7fff8b4e7000 - 0x7fff8b512fff libxslt.1.dylib (11.3) <441776B8-9130-3893-956F-39C85FFA644F> /usr/lib/libxslt.1.dylib 0x7fff8b513000 - 0x7fff8b6aefef com.apple.vImage (6.0 - 6.0) <FAE13169-295A-33A5-8E6B-7C2CC1407FA7> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vImage.framework/Versions/A/vImage 0x7fff8b7c9000 - 0x7fff8b7c9fff com.apple.quartzframework (1.5 - 1.5) <6403C982-0D45-37EE-A0F0-0EF8BCFEF440> /System/Library/Frameworks/Quartz.framework/Versions/A/Quartz 0x7fff8b82a000 - 0x7fff8b892fff libvDSP.dylib (380.10) <3CA154A3-1BE5-3CF4-BE48-F0A719A963BB> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvDSP.dylib 0x7fff8b893000 - 0x7fff8b8c9fff com.apple.DebugSymbols (98 - 98) <7059F71D-9A82-3D32-99BB-E043DEDA6174> /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols 0x7fff8b8ca000 - 0x7fff8b97bfff com.apple.LaunchServices (539.9 - 539.9) <07FC6766-778E-3479-8F28-D2C9917E1DD1> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/LaunchServices 0x7fff8ba1c000 - 0x7fff8ba32fff com.apple.MultitouchSupport.framework (237.4 - 237.4) <0F7FEE29-161B-3D8E-BE91-308CBD354461> /System/Library/PrivateFrameworks/MultitouchSupport.framework/Versions/A/MultitouchSupport 0x7fff8c219000 - 0x7fff8c270ff7 com.apple.AppleVAFramework (5.0.19 - 5.0.19) <541A7DBE-F8E4-3023-A3C0-8D5A2A550CFB> /System/Library/PrivateFrameworks/AppleVA.framework/Versions/A/AppleVA 0x7fff8c271000 - 0x7fff8c271fff com.apple.Accelerate (1.8 - Accelerate 1.8) <878A6E7E-CB34-380F-8212-47FBF12C7C96> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate 0x7fff8c272000 - 0x7fff8c34cfff com.apple.backup.framework (1.4.3 - 1.4.3) <6B65C44C-7777-3331-AD9D-438D10AAC777> /System/Library/PrivateFrameworks/Backup.framework/Versions/A/Backup 0x7fff8c386000 - 0x7fff8c421fff com.apple.CoreSymbolication (3.0 - 117) <7D43ED93-BD81-338C-8076-6A932A1D19E8> /System/Library/PrivateFrameworks/CoreSymbolication.framework/Versions/A/CoreSymbolication 0x7fff8c42b000 - 0x7fff8c44bfff libPng.dylib (851) <3466F35C-EC1A-3D1A-80DC-175857FA19D5> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libPng.dylib 0x7fff8c4a7000 - 0x7fff8c4c8fff com.apple.Ubiquity (1.2 - 243.15) <C9A7EE77-B637-3676-B667-C0843BBB0409> /System/Library/PrivateFrameworks/Ubiquity.framework/Versions/A/Ubiquity 0x7fff8c4c9000 - 0x7fff8c4ebff7 libxpc.dylib (140.43) <70BC645B-6952-3264-930C-C835010CCEF9> /usr/lib/system/libxpc.dylib 0x7fff8c4ec000 - 0x7fff8c51afff com.apple.shortcut (2.2 - 2.2) <59F18E16-E3DC-3C8D-895D-A61A301BEA1D> /System/Library/PrivateFrameworks/Shortcut.framework/Versions/A/Shortcut 0x7fff8c51b000 - 0x7fff8c51ffff libpam.2.dylib (20) <C8F45864-5B58-3237-87E1-2C258A1D73B8> /usr/lib/libpam.2.dylib 0x7fff8c520000 - 0x7fff8c533ff7 libbsm.0.dylib (32) <F497D3CE-40D9-3551-84B4-3D5E39600737> /usr/lib/libbsm.0.dylib 0x7fff8c534000 - 0x7fff8c551ff7 com.apple.openscripting (1.3.6 - 148.3) <C008F56A-1E01-3D4C-A9AF-97799D0FAE69> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/OpenScripting.framework/Versions/A/OpenScripting 0x7fff8c5ac000 - 0x7fff8c5c6fff com.apple.CoreMediaAuthoring (2.1 - 914) <23F2B9D0-7B73-3C42-8EDC-8ADBF9C7B8C2> /System/Library/PrivateFrameworks/CoreMediaAuthoring.framework/Versions/A/CoreMediaAuthoring 0x7fff8c5c7000 - 0x7fff8c5d4ff7 com.apple.HelpData (2.1.4 - 85) <EE68BDCC-AF2E-34D3-8E4F-87379E3A4D8E> /System/Library/PrivateFrameworks/HelpData.framework/Versions/A/HelpData 0x7fff8c5d5000 - 0x7fff8c5e1ff7 com.apple.DirectoryService.Framework (10.8 - 151.10) <4F3284A9-EFD4-3A77-8B7F-D3D611D656A0> /System/Library/Frameworks/DirectoryService.framework/Versions/A/DirectoryService 0x7fff8c5e2000 - 0x7fff8c61afff libtidy.A.dylib (15.10) <9009156B-84F5-3781-BFCB-B409B538CD18> /usr/lib/libtidy.A.dylib 0x7fff8c61b000 - 0x7fff8c66aff7 libcorecrypto.dylib (106.2) <CE0C29A3-C420-339B-ADAA-52F4683233CC> /usr/lib/system/libcorecrypto.dylib 0x7fff8c66b000 - 0x7fff8c730ff7 com.apple.coreui (2.0 - 181.1) <83D2C92D-6842-3C9D-9289-39D5B4554C3A> /System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/CoreUI 0x7fff8c731000 - 0x7fff8c731fff com.apple.Accelerate.vecLib (3.8 - vecLib 3.8) <F565B686-24E2-39F2-ACC3-C5E4084476BE> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/vecLib 0x7fff8c732000 - 0x7fff8c9f6fff com.apple.AddressBook.framework (7.1 - 1170) <A850809B-B087-3366-9FA0-1518C20831D3> /System/Library/Frameworks/AddressBook.framework/Versions/A/AddressBook 0x7fff8cbda000 - 0x7fff8cc5cff7 com.apple.Heimdal (3.0 - 2.0) <ACF0C667-5ACC-382A-A998-61E85386C814> /System/Library/PrivateFrameworks/Heimdal.framework/Versions/A/Heimdal 0x7fff8cee4000 - 0x7fff8cee9fff libcompiler_rt.dylib (30) <08F8731D-5961-39F1-AD00-4590321D24A9> /usr/lib/system/libcompiler_rt.dylib 0x7fff8ceea000 - 0x7fff8cef0ff7 libunwind.dylib (35.1) <21703D36-2DAB-3D8B-8442-EAAB23C060D3> /usr/lib/system/libunwind.dylib 0x7fff8cef1000 - 0x7fff8cf59ff7 libc++.1.dylib (65.1) <E5A0C88E-0837-3015-A987-F8C5A0D35DD6> /usr/lib/libc++.1.dylib 0x7fff8cf5a000 - 0x7fff8cfa9fff com.apple.framework.CoreWiFi (1.3 - 130.13) <CCF3D8E3-CD1C-36CD-929A-C9972F833F24> /System/Library/Frameworks/CoreWiFi.framework/Versions/A/CoreWiFi 0x7fff8cfaa000 - 0x7fff8d0b5fff libFontParser.dylib (84.6) <96C42E49-79A6-3475-B5E4-6A782599A6DA> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/Resources/libFontParser.dylib 0x7fff8d0b7000 - 0x7fff8d3ceff7 com.apple.CoreServices.CarbonCore (1037.6 - 1037.6) <1E567A52-677F-3168-979F-5FBB0818D52B> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/CarbonCore 0x7fff8d3cf000 - 0x7fff8d3fbff7 libRIP.A.dylib (333.1) <CC2A33EB-409C-3C4D-97D4-41F4A080F874> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib 0x7fff8d3fc000 - 0x7fff8d449fff com.apple.CoreMediaIO (309.0 - 4163.1) <8FD1C1A9-25C5-3B9E-A76D-BE813253B358> /System/Library/Frameworks/CoreMediaIO.framework/Versions/A/CoreMediaIO 0x7fff8e40a000 - 0x7fff8f037fff com.apple.AppKit (6.8 - 1187.40) <F12CF463-6F88-32ED-9EBA-0FA2AD3CF576> /System/Library/Frameworks/AppKit.framework/Versions/C/AppKit 0x7fff8f038000 - 0x7fff8f038fff libkeymgr.dylib (25) <CC9E3394-BE16-397F-926B-E579B60EE429> /usr/lib/system/libkeymgr.dylib 0x7fff8f03c000 - 0x7fff8f05eff7 com.apple.Kerberos (2.0 - 1) <416543F5-E7AF-3269-843F-C8CDA8DD0FFA> /System/Library/Frameworks/Kerberos.framework/Versions/A/Kerberos 0x7fff8f24c000 - 0x7fff8f24dff7 libremovefile.dylib (23.2) <6763BC8E-18B8-3AD9-8FFA-B43713A7264F> /usr/lib/system/libremovefile.dylib 0x7fff8f24e000 - 0x7fff8f252ff7 com.apple.CommonPanels (1.2.5 - 94) <5F81D593-4B87-3DCC-B934-625D436B4CB1> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/CommonPanels.framework/Versions/A/CommonPanels 0x7fff8f3b6000 - 0x7fff8f402fff com.apple.framework.CoreWLAN (3.4 - 340.18) <3735FB49-30C0-3B11-BE25-2ACDD96041B5> /System/Library/Frameworks/CoreWLAN.framework/Versions/A/CoreWLAN 0x7fff8f41b000 - 0x7fff8f42eff7 com.apple.LangAnalysis (1.7.0 - 1.7.0) <023D909C-3AFA-3438-88EB-05D0BDA5AFFE> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/LangAnalysis.framework/Versions/A/LangAnalysis 0x7fff8f481000 - 0x7fff8f4adfff com.apple.framework.Apple80211 (8.5 - 850.252) <73506CA1-CF76-3A98-A6F2-3DDAC10CB67A> /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Apple80211 0x7fff8f4ae000 - 0x7fff8f4bcff7 libsystem_network.dylib (77.10) <2AAA67A1-525E-38F0-8028-1D2B64716611> /usr/lib/system/libsystem_network.dylib 0x7fff8f4bd000 - 0x7fff8f505fff libcurl.4.dylib (69.2) <EBDBF42D-E4A6-3D05-A76B-2817D79D59E2> /usr/lib/libcurl.4.dylib 0x7fff8f570000 - 0x7fff8f58bff7 com.apple.frameworks.preferencepanes (15.1 - 15.1) <8A3CDC5B-9FA5-32EB-A066-F19874193B92> /System/Library/Frameworks/PreferencePanes.framework/Versions/A/PreferencePanes 0x7fff8f58c000 - 0x7fff8f81dff7 com.apple.RawCamera.bundle (5.03 - 729) <DBA059CC-E78F-356F-B435-DA62A746F4D4> /System/Library/CoreServices/RawCamera.bundle/Contents/MacOS/RawCamera 0x7fff8f82b000 - 0x7fff8f82dff7 libunc.dylib (25) <2FDC94A7-3039-3680-85F3-2164E63B464D> /usr/lib/system/libunc.dylib 0x7fff8f82e000 - 0x7fff8f871ff7 com.apple.RemoteViewServices (2.0 - 80.6) <5CFA361D-4853-3ACC-9EFC-A2AC1F43BA4B> /System/Library/PrivateFrameworks/RemoteViewServices.framework/Versions/A/RemoteViewServices 0x7fff90128000 - 0x7fff90137ff7 libxar.1.dylib (105) <B6A7C8AA-3E20-3A1D-A7BA-4FD0052FA508> /usr/lib/libxar.1.dylib 0x7fff90138000 - 0x7fff90177ff7 com.apple.QD (3.42.1 - 285.1) <77A20C25-EBB5-341C-A05C-5D458B97AD5C> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/QD.framework/Versions/A/QD 0x7fff90238000 - 0x7fff902d2fff libvMisc.dylib (380.10) <A7F12764-A94C-36EB-88E0-F826F5AF55B4> /System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/libvMisc.dylib 0x7fff902d3000 - 0x7fff90317fff libcups.2.dylib (327.7) <9F35B58A-F47E-348A-8E09-E235FA4B9270> /usr/lib/libcups.2.dylib 0x7fff9035b000 - 0x7fff9038ffff com.apple.securityinterface (6.0 - 55024.4) <614C9B8E-2056-3A41-9A01-DAF74C97CC43> /System/Library/Frameworks/SecurityInterface.framework/Versions/A/SecurityInterface 0x7fff90390000 - 0x7fff90410ff7 com.apple.ApplicationServices.ATS (332 - 341.1) <39B53565-FA31-3F61-B090-C787C983142E> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ATS.framework/Versions/A/ATS 0x7fff90411000 - 0x7fff90466ff7 libTIFF.dylib (851) <7706BB07-E7E8-38BE-A5F0-D8B63E3B9283> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libTIFF.dylib 0x7fff904f8000 - 0x7fff906f8fff libicucore.A.dylib (491.11.3) <5783D305-04E8-3D17-94F7-1CEAFA975240> /usr/lib/libicucore.A.dylib 0x7fff907a1000 - 0x7fff907b6fff com.apple.ImageCapture (8.0 - 8.0) <71B24609-DEE9-3927-9C82-62E72270299C> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/ImageCapture.framework/Versions/A/ImageCapture 0x7fff907b7000 - 0x7fff907b7fff com.apple.vecLib (3.8 - vecLib 3.8) <6CBBFDC4-415C-3910-9558-B67176447789> /System/Library/Frameworks/vecLib.framework/Versions/A/vecLib 0x7fff907b9000 - 0x7fff907c5fff libCSync.A.dylib (333.1) <319D3E83-8086-3990-8773-872F2E7C6EB3> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCSync.A.dylib 0x7fff907c6000 - 0x7fff907cbfff libcache.dylib (57) <65187C6E-3FBF-3EB8-A1AA-389445E2984D> /usr/lib/system/libcache.dylib 0x7fff907cc000 - 0x7fff907ccffd com.apple.audio.units.AudioUnit (1.9.2 - 1.9.2) <6D314680-7409-3BC7-A807-36341411AF9A> /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit 0x7fff907f6000 - 0x7fff907fdfff libGFXShared.dylib (8.10.1) <B4AB9480-2CDB-34F8-8D6F-F5A2CFC221B0> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGFXShared.dylib 0x7fff90923000 - 0x7fff909f6ff7 com.apple.DiscRecording (7.0 - 7000.2.4) <D62DA01B-5B60-3E99-9395-C11FB47E82E0> /System/Library/Frameworks/DiscRecording.framework/Versions/A/DiscRecording 0x7fff909f7000 - 0x7fff90f67ff7 com.apple.CoreAUC (6.22.03 - 6.22.03) <A77BC97A-B695-3F7E-8696-5B2357C2726B> /System/Library/PrivateFrameworks/CoreAUC.framework/Versions/A/CoreAUC 0x7fff90f68000 - 0x7fff910d9ff7 com.apple.QTKit (7.7.1 - 2599.41) <A645347D-3EEC-34A7-8051-A57AC60151EF> /System/Library/Frameworks/QTKit.framework/Versions/A/QTKit 0x7fff910da000 - 0x7fff910dcfff libquarantine.dylib (52.1) <143B726E-DF47-37A8-90AA-F059CFD1A2E4> /usr/lib/system/libquarantine.dylib 0x7fff910dd000 - 0x7fff910e1fff libGIF.dylib (851) <AD40D084-6E34-38CD-967D-705F94B188DA> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libGIF.dylib 0x7fff910e2000 - 0x7fff910e5fff com.apple.AppleSystemInfo (2.0 - 2) <C9D7F3A6-F926-39F3-8F55-A3A137DDAE50> /System/Library/PrivateFrameworks/AppleSystemInfo.framework/Versions/A/AppleSystemInfo 0x7fff910e6000 - 0x7fff9117aff7 com.apple.CorePDF (2.2 - 2.2) <F17D7D37-4190-38E2-9F43-DD4F87792390> /System/Library/PrivateFrameworks/CorePDF.framework/Versions/A/CorePDF 0x7fff9117b000 - 0x7fff9118afff com.apple.opengl (1.8.10 - 1.8.10) <AD49CF56-B7C1-3598-8610-58532FC41345> /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL 0x7fff9118b000 - 0x7fff9118bfff com.apple.CoreServices (57 - 57) <45F1466A-8264-3BB7-B0EC-E5E5BFBED143> /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices 0x7fff9118c000 - 0x7fff91196fff com.apple.speech.recognition.framework (4.1.5 - 4.1.5) <5A4B532E-3428-3F0A-8032-B0AFFF72CA3D> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/SpeechRecognition.framework/Versions/A/SpeechRecognition 0x7fff91197000 - 0x7fff911acff7 libdispatch.dylib (228.23) <D26996BF-FC57-39EB-8829-F63585561E09> /usr/lib/system/libdispatch.dylib 0x7fff911fd000 - 0x7fff91257fff com.apple.print.framework.PrintCore (8.3 - 387.2) <5BA0CBED-4D80-386A-9646-F835C9805B71> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/PrintCore.framework/Versions/A/PrintCore 0x7fff91258000 - 0x7fff91263ff7 com.apple.aps.framework (3.0 - 3.0) <DEF85257-2D1C-3524-88F8-CF70980726AE> /System/Library/PrivateFrameworks/ApplePushService.framework/Versions/A/ApplePushService 0x7fff91264000 - 0x7fff91268fff libCGXType.A.dylib (333.1) <16625094-813E-39F8-9AFE-C1A24ED11749> /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libCGXType.A.dylib 0x7fff91771000 - 0x7fff9195bff7 com.apple.CoreFoundation (6.8 - 744.19) <0F7403CA-2CB8-3D0A-992B-679701DF27CA> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation 0x7fff9195c000 - 0x7fff91996fff com.apple.framework.internetaccounts (2.1 - 210) <546769AA-C561-3C17-8E8E-4E65A700E2F1> /System/Library/PrivateFrameworks/InternetAccounts.framework/Versions/A/InternetAccounts 0x7fff91997000 - 0x7fff91a35ff7 com.apple.ink.framework (10.8.2 - 150) <3D8D16A2-7E01-3EA1-B637-83A36D353308> /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Ink.framework/Versions/A/Ink 0x7fff91a38000 - 0x7fff91a45ff7 com.apple.NetAuth (4.0 - 4.0) <A4A21A2F-B26A-3DC9-95E4-DAFA43A4A2C3> /System/Library/PrivateFrameworks/NetAuth.framework/Versions/A/NetAuth 0x7fff91a46000 - 0x7fff91a89ff7 com.apple.bom (12.0 - 192) <0EFE0F2D-B6DE-3D1E-93C2-EED6D96F70A2> /System/Library/PrivateFrameworks/Bom.framework/Versions/A/Bom 0x7fff91aa1000 - 0x7fff91aebff7 libGLU.dylib (8.10.1) <6699DEA6-9EEB-3B84-A57F-B25AE44EC584> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLU.dylib 0x7fff91aec000 - 0x7fff91c61ff7 com.apple.CFNetwork (596.5 - 596.5) <22372475-6EF4-3A04-83FC-C061FE4717B3> /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork 0x7fff91c62000 - 0x7fff91d5fff7 libxml2.2.dylib (22.3) <7FD09F53-83DA-3ECD-8DD9-870E1A2F0427> /usr/lib/libxml2.2.dylib 0x7fff91d60000 - 0x7fff91d91ff7 com.apple.DictionaryServices (1.2 - 184.4) <FB0540FF-5034-3591-A28D-6887FBC220F7> /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/DictionaryServices.framework/Versions/A/DictionaryServices 0x7fff91d92000 - 0x7fff91dcffef libGLImage.dylib (8.10.1) <91E31B9B-4141-36D5-ABDC-20F1D6D1D0CF> /System/Library/Frameworks/OpenGL.framework/Versions/A/Libraries/libGLImage.dylib 0x7fff91dda000 - 0x7fff91de1fff com.apple.phonenumbers (1.1 - 47) <0EB01ED6-F8DD-3A72-89C6-BA3E7AD805C8> /System/Library/PrivateFrameworks/PhoneNumbers.framework/Versions/A/PhoneNumbers 0x7fff91de2000 - 0x7fff91f40fef com.apple.MediaControlSender (1.7 - 170.20) <853BE89D-49B0-3922-9ED5-DDBDE9A97356> /System/Library/PrivateFrameworks/MediaControlSender.framework/Versions/A/MediaControlSender 0x7fff91f41000 - 0x7fff91f4cfff com.apple.CommonAuth (3.0 - 2.0) <1CA95702-DDC7-3ADB-891E-7F037ABDDA14> /System/Library/PrivateFrameworks/CommonAuth.framework/Versions/A/CommonAuth 0x7fff91f4d000 - 0x7fff91f7bfff com.apple.CoreServicesInternal (154.3 - 154.3) <F4E118E4-E327-3314-83D7-EA20B1717ED0> /System/Library/PrivateFrameworks/CoreServicesInternal.framework/Versions/A/CoreServicesInternal 0x7fff91fa7000 - 0x7fff92003fff com.apple.corelocation (1239.40 - 1239.40) <2F743CD8-A9F5-3375-A3B0-BB0D756FC239> /System/Library/Frameworks/CoreLocation.framework/Versions/A/CoreLocation 0x7fff92004000 - 0x7fff92106fff libJP2.dylib (851) <26FFBDBF-9CCE-33D7-A45B-0A31C98DA37E> /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJP2.dylib 0x7fff9210b000 - 0x7fff92118fff libbz2.1.0.dylib (29) <CE9785E8-B535-3504-B392-82F0064D9AF2> /usr/lib/libbz2.1.0.dylib 0x7fff92119000 - 0x7fff92187ff7 com.apple.framework.IOKit (2.0.1 - 755.42.1) <A90038ED-48F2-3CC9-A042-53A3D7985844> /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit 0x7fff9224c000 - 0x7fff9234afff com.apple.QuickLookUIFramework (4.0 - 555.5) <EE02B332-20F3-3226-A022-D71B808E1CC4> /System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.framework/Versions/A/QuickLookUI External Modification Summary: Calls made by other processes targeting this process: task_for_pid: 15 thread_create: 0 thread_set_state: 0 Calls made by this process: task_for_pid: 0 thread_create: 0 thread_set_state: 0 Calls made by all processes on this machine: task_for_pid: 5196 thread_create: 1 thread_set_state: 0 VM Region Summary: ReadOnly portion of Libraries: Total=303.2M resident=212.8M(70%) swapped_out_or_unallocated=90.3M(30%) Writable regions: Total=1.7G written=1.2G(68%) resident=1.6G(92%) swapped_out=25.8M(1%) unallocated=142.5M(8%) REGION TYPE VIRTUAL =========== ======= ATS (font support) 31.8M ATS (font support) (reserved) 8K reserved VM address space (unallocated) CG backing stores 872K CG image 180K CG raster data 2380K CG shared images 224K CoreImage 12K CoreServices 2324K IOKit 4K MALLOC 43.5M MALLOC guard page 48K Memory tag=242 12K Memory tag=251 24K OpenCL 108K STACK GUARD 56.0M Stack 11.6M VM_ALLOCATE 1.7G __DATA 24.2M __IMAGE 528K __LINKEDIT 98.5M __TEXT 204.7M __UNICODE 544K mapped file 124.2M shared memory 7428K =========== ======= TOTAL 2.2G TOTAL, minus reserved VM space 2.2G Model: MacBookPro10,1, BootROM MBP101.00EE.B03, 4 processors, Intel Core i7, 2.7 GHz, 16 GB, SMC 2.3f36 Graphics: Intel HD Graphics 4000, Intel HD Graphics 4000, Built-In, 512 MB Graphics: NVIDIA GeForce GT 650M, NVIDIA GeForce GT 650M, PCIe, 1024 MB Memory Module: BANK 0/DIMM0, 8 GB, DDR3, 1600 MHz, 0x80AD, 0x484D5434314753364D465238432D50422020 Memory Module: BANK 1/DIMM0, 8 GB, DDR3, 1600 MHz, 0x80AD, 0x484D5434314753364D465238432D50422020 AirPort: spairport_wireless_card_type_airport_extreme (0x14E4, 0xEF), Broadcom BCM43xx 1.0 (5.106.98.100.17) Bluetooth: Version 4.1.7f4 12974, 3 service, 21 devices, 3 incoming serial ports Network Service: Thunderbolt Ethernet, Ethernet, en1 Network Service: Wi-Fi, AirPort, en0 PCI Card: Apple 57762-A0, sppci_ethernet, Thunderbolt@10,0,0 Serial ATA Device: APPLE SSD SD512E, 500.28 GB USB Device: hub_device, 0x8087 (Intel Corporation), 0x0024, 0x1a100000 / 2 USB Device: FaceTime HD Camera (Built-in), apple_vendor_id, 0x8510, 0x1a110000 / 3 USB Device: hub_device, 0x8087 (Intel Corporation), 0x0024, 0x1d100000 / 2 USB Device: hub_device, 0x0424 (SMSC), 0x2512, 0x1d180000 / 3 USB Device: BRCM20702 Hub, 0x0a5c (Broadcom Corp.), 0x4500, 0x1d181000 / 5 USB Device: Bluetooth USB Host Controller, apple_vendor_id, 0x8286, 0x1d181300 / 7 USB Device: Apple Internal Keyboard / Trackpad, apple_vendor_id, 0x0262, 0x1d182000 / 4
Based on a tip from mstange, I narrowed this down to the Gecko Profiler extension; with the extension enabled I get the crash any time I shut down the browser, and with it disabled I don't. I still see the crash if I stop the profiler before shutting down.
Component: JavaScript Engine: JIT → Gecko Profiler
Guessing it's a regression from bug 841646. The JS engine is responsible for setting a JSRuntime when it's initialize and ready to respond to a js::EnableRuntimeProfilingStack request. It's also responsible to set that JSRuntime to null once it's no longer ready to respond to js::EnableRuntimeProfilingStack on shutdown. It looks like bug 841646 would have regressed that.
Component: Gecko Profiler → JavaScript Engine
Depends on: 841646
Flags: needinfo?(emanuel.hoogeveen)
When GeckoProfilerInitRAII profilerGuard in XRE_main goes out of scope it calls profiler_shutdown(), which calls mozilla_sampler_shutdown(), which calls profiler_stop(), which calls mozilla_sampler_stop(), which calls PseudoStack::disableJSSampling(), which calls js::EnableRuntimeProfilingStack(mRuntime, false) because mRuntime isn't null. All this ends up doing is discarding JITted code, so I assume there's no need during shutdown. There are only two places where mRuntime gets set in the first place: 1) WorkerThreadPrimaryRunnable::Run, which calls PseudoStack::sampleRuntime(nullptr) before returning, and XPCJSRuntime::XPCJSRuntime(), which calls PseudoStack::sampleRuntime(nullptr) in its destructor. I assume the latter is happening after GeckoProfilerInitRAII's destructor, but I can't find where XPCJSRuntime is created (the trail leads to nsXPConnect's constructor, but I can't trace that back to XRE_main). I don't think bug 841646 caused this behavior, but it did potentially make jit::InvalidateAll do more work. In any case, it looks like we can just call PseudoStack::sampleRuntime(nullptr) in mozilla_sampler_shutdown() to ensure mRuntime is null here. The attached patch does this. Seems to work locally, but then I haven't seen this crash myself. Try run: https://tbpl.mozilla.org/?tree=Try&rev=38806b4f6a74 Benoit, what do you think?
Assignee: nobody → emanuel.hoogeveen
Status: NEW → ASSIGNED
Attachment #8375733 - Flags: review?(bgirard)
Flags: needinfo?(emanuel.hoogeveen)
Comment on attachment 8375733 [details] [diff] [review] Ensure the Pseudo Stack's mRuntime is null before shutting down the profiler Cancelling review request for now given IRC discussion. I'll have to get back to this tomorrow.
Attachment #8375733 - Flags: review?(bgirard)
Still trying to figure out how all of this fits together. I finally figured how startup works. For the record, this is what happens: main() calls do_main() do_main() calls XRE_main() XRE_main() creates an XREMain on the stack XRE_main() calls XREMain::XRE_main() on the XREMain XREMain::XRE_main() creates a GeckoProfilerInitRAII on the stack ... XREMain::XRE_main() allocates a new ScopedXPCOMStartup on the heap XREMain::XRE_main() calls ScopedXPCOMStartup::Initialize() on the ScopedXPCOMStartup* ScopedXPCOMStartup::Initialize() calls the public NS_InitXPCOM2() public NS_InitXPCOM2() calls xpcomFunctions.init() which points to the private NS_InitXPCOM2() private NS_InitXPCOM2() allocates a new nsComponentManagerImpl on the heap private NS_InitXPCOM2() calls nsComponentManagerImpl::Init() on the nsComponentManagerImpl* nsComponentManagerImpl::Init() calls nsComponentManagerImpl::InitializeStaticModules() nsComponentManagerImpl::InitializeStaticModules() initializes nsComponentManagerImpl::sStaticModules with functions from kPStaticModules ... nsComponentManagerImpl::Init() calls nsComponentManagerImpl::RegisterModule() on all elements of nsComponentManagerImpl::sStaticModules nsComponentManagerImpl::RegisterModule() creates a new KnownModule on the heap and appends it to its mKnownStaticModules member nsComponentManagerImpl::RegisterModule() calls nsComponentManagerImpl::RegisterCIDEntryLocked() with the KnownModule nsComponentManagerImpl::RegisterCIDEntryLocked() allocates a new nsFactoryEntry on the heap and adds it to its mFactories member ... private NS_InitXPCOM2() calls do_GetService("@mozilla.org/moz/jsloader;1") which returns an nsGetServiceByContractID private NS_InitXPCOM2() assigns the nsGetServiceByContractID to an nsCOMPtr<nsISupports> nsCOMPtr<T>::operator=() calls nsCOMPtr<T>::assign_from_gs_contractid() nsCOMPtr<T>::assign_from_gs_contractid() calls nsGetServiceByContractID::operator()() nsGetServiceByContractID::operator()() calls CallGetService() CallGetService() calls nsComponentManagerImpl::GetServiceByContractID() nsComponentManagerImpl::GetServiceByContractID() calls nsComponentManagerImpl::CreateInstanceByContractID() nsComponentManagerImpl::CreateInstanceByContractID() calls nsComponentManagerImpl::GetFactoryEntry() on the contract ID nsComponentManagerImpl::CreateInstanceByContractID() calls nsFactoryEntry::GetFactory() on the factory entry nsFactoryEntry::GetFactory() calls nsComponentManagerImpl::KnownModule::Load() on its mModule member nsComponentManagerImpl::KnownModule::Load() calls mozilla::Module::loadProc() on its mModule member mozilla::Module::loadProc() on mModule calls kLayoutModule.loadProc() which points to Initialize() Initialize() calls xpcModuleCtor() xpcModuleCtor() calls nsXPConnect::InitStatics() nsXPConnect::InitStatics() allocates a new nsXPConnect on the heap nsXPConnect::nsXPConnect() calls XPCJSRuntime::newXPCJSRuntime() XPCJSRuntime::newXPCJSRuntime() allocates a new XPCJSRuntime on the heap XPCJSRuntime::XPCJSRuntime() calls CycleCollectedJSRuntime::CycleCollectedJSRuntime() CycleCollectedJSRuntime::CycleCollectedJSRuntime() calls JS_NewRuntime() JS_NewRuntime() allocates a new JSRuntime on the heap ... XPCJSRuntime::XPCJSRuntime() calls CycleCollectedJSRuntime::Runtime() to get its JSRuntime* XPCJSRuntime::XPCJSRuntime() calls PseudoStack::sampleRuntime(runtime)
I've had no luck reproducing this on Windows so far (opt or debug). To those of you who get this crash, do you have steps to reproduce starting from a fresh profile? (you'll need the SPS profiler extension, presumably) What I think is happening here is that something is keeping the main thread XPCJSRuntime alive even after XPCOM has shut down. Then JS_ShutDown() shuts down some JIT stuff, and GeckoProfilerInitRAII::~GeckoProfilerInitRAII() ends up trying to access it. But adding some printfs on Windows, I see the right sequence of events happening (XPCJSRuntime::~XPCJSRuntime() followed by JS_ShutDown() followed by GeckoProfilerInitRAII::~GeckoProfilerInitRAII()) and don't get a crash.
Flags: needinfo?(reuben.bmo)
Flags: needinfo?(milan)
Flags: needinfo?(irving)
Flags: needinfo?(gijskruitbosch+bugs)
(In reply to Emanuel Hoogeveen [:ehoogeveen] from comment #9) > I've had no luck reproducing this on Windows so far (opt or debug). To those > of you who get this crash, do you have steps to reproduce starting from a > fresh profile? (you'll need the SPS profiler extension, presumably) On OS X: 0) download https://github.com/bgirard/Gecko-Profiler-Addon/blob/master/geckoprofiler.xpi to local disk 1) new profile on current nightly (Feb 16 at time of writing) 2) don't set browser as default, don't ask again (probably not important) 3) drag xpi from (0) to the about:home page that's now open 4) click install 5) close doorhanger after install 6) cmd-q reproduces this 100% of the time for me. I've not tried to reproduce on Windows.
Flags: needinfo?(gijskruitbosch+bugs)
Same SPS as in comment 10 for me, on OS X 10.8.5, with the profiler extension enabled.
Flags: needinfo?(milan)
Same STR as Gijs' in comment 10, I don't use Windows.
Flags: needinfo?(reuben.bmo)
Success! I got this to reproduce on Linux using a clang opt build. No luck with GCC or debug. I also confirmed my suspicion: JS_ShutDown() and GeckoProfilerInitRAII::~GeckoProfilerInitRAII() get called before XPCJSRuntime::~XPCJSRuntime(), causing the segfault. I still need to figure out what's holding the XPCJSRuntime alive, but at least I can debug it now.
Flags: needinfo?(irving)
The exact place this is crashing is http://dxr.mozilla.org/mozilla-central/source/js/src/jsworkers.cpp#148, because while helper.ionBuilder isn't *null* it is 0x5a5a5a5a (32-bit) or 0x5a5a5a5a5a5a5a5a (64-bit). This is the memory poisoning on free added in bug 860254, and explains why a lot more people are hitting this now. The fact remains that we shouldn't be here at all - JS_ShutDown() has already happened so any JIT related structures are probably a mess. But preventing us from getting there without fixing the leak looks like a difficult proposition (for instance, JS_ShutDown() can't get access to the PseudoStack directly because the symbols for it are in a different lib).
After talking with mccr8 on IRC, it turns out that the leaks I was seeing were simply a consequence of not running CC on shutdown in opt builds by default. If I change the relevant line to enable them when the profiler is enabled, the crash goes away! That also explains why these only happen in opt builds, though not why only clang seems to be affected. Patches coming up.
Well, presumably there's some Clang-specific behavior that is causing us to not tear down some data structure without shutdown collections. The question is really, is it worth the effort of figuring out what it is to improve shutdown speed when the profiler is enabled. That's not really a question I can answer.
I found this while debugging this issue; the fix is small enough that it didn't seem worth making a new bug for. The profiler uses NS_ConvertUTF16toUTF8().get() to convert a string, but the pointer returned is only a temporary and the NS_ConvertUTF16toUTF8 is destroyed afterward. After bug 860254, the deallocated memory shows up as a long string of 'Z's (0x5a) and we crash. This patch 1) Makes sure the filename exists before we try to convert it. As far as I can tell, NS_ConvertUTF16toUTF8 and its base classes do not deal with null pointers. 2) Passes NS_ConvertUTF16toUTF8().get() directly into the IOMarkerPayload constructor - the C++ spec guarantees that the temporary will stay around until the end of the expression, which in this case includes the function call. 3) Adds a null check in IOMarkerPayload's constructor before trying to duplicate the string, as strdup() doesn't handle null.
Attachment #8377688 - Flags: review?(bgirard)
This patch changes the #ifndef in nsCycleCollector::Shutdown() so that the shutdown collections will happen if the profiler is available, fixing the (temporary) leaks and the crash.
Attachment #8375733 - Attachment is obsolete: true
Attachment #8377694 - Flags: review?(continuation)
Attachment #8377694 - Flags: review?(bgirard)
Comment on attachment 8377694 [details] [diff] [review] Part 1: Run shutdown collections when the profiler is enabled to avoid leaking and crashing on profiler shutdown. Review of attachment 8377694 [details] [diff] [review]: ----------------------------------------------------------------- I'll defer to Benoit's judgement here, but I don't think we want to re-enable shutdown collections in any build that has the profiler enabled. That seems a little heavy-handed.
Attachment #8377694 - Flags: review?(continuation) → review-
I guess a runtime check would be better here; should be doable. But I do think we need to either do a shutdown collection when the profiler is actually active, or do attachment 8375733 [details] [diff] [review] to ensure we don't crash here. Even if we track down the transient leaks that clang builds have, it's pretty scary that a leak can cause this behavior.
Comment on attachment 8377688 [details] [diff] [review] Part 0: Fix a use after free error in the profiler exposed by write poisoning. Review of attachment 8377688 [details] [diff] [review]: ----------------------------------------------------------------- ::: tools/profiler/ProfilerIOInterposeObserver.cpp @@ +40,4 @@ > > + IOMarkerPayload* markerPayload = > + new IOMarkerPayload(aObservation.Reference(), > + filenameUTF16 ? NS_ConvertUTF16toUTF8(filenameUTF16).get() : nullptr, What's the lifetime of this object? Maybe we should keep it on the stack to be safe.
Attachment #8377688 - Flags: review?(bgirard) → review+
Carrying forward r=BenWa. (In reply to Benoit Girard (:BenWa) from comment #21) > What's the lifetime of this object? Maybe we should keep it on the stack to > be safe. Do you mean the lifetime of the NS_ConvertUTF16toUTF8 object? Its destructor shouldn't run until after IOMarkerPayload's constructor returns (at which point the characters pointed to by NS_ConvertUTF16toUTF8::get() have been copied into another buffer). But actually, this does seem a bit cleaner, and it's a common pattern across the tree (now that I actually know what I'm looking for).
Attachment #8377688 - Attachment is obsolete: true
Attachment #8377763 - Flags: review+
Ah, it looks like someone already got to it first. I still think the null checks are worthwhile though. Still carrying r=BenWa since I just rebased the patch, but I updated the description to match the fix.
Attachment #8377763 - Attachment is obsolete: true
Attachment #8377782 - Flags: review+
Actually, here's an alternative patch that I think is probably better. This is similar to my initial patch, except we clear out the PseudoStack's runtime in nsXPConnect::ReleaseXPConnectSingleton() instead. This is just after XPCJSRuntime::~XPCJSRuntime() would be called normally (if the shutdown collections happened), so I think this is the least bad place for it. With this I think it would also be possible to remove the equivalent calls from XPCJSRuntime::~XPCJSRuntime() - from what I can see, we only ever create one XPCJSRuntime on the main thread - but I don't know if that's a good idea in general. For now I've made it so this code only runs if NS_RELEASE2() returned a non-zero reference count. bholley, there's a comment in the patch, but a few additional notes: 1) I considered putting this in JS_ShutDown(), but that function lives in js/src/jsapi.cpp, doesn't know about MOZ_ENABLE_PROFILER_SPS and isn't part of libxul, so that would have gotten complicated. 2) I considered making this code opt-only since debug builds run the shutdown collections; but if there's an actual leak, the debug builds will tell us anyway and it's not very helpful for it to crash the browser. 3) We could do the shutdown collections if the profiler is active, but that would still cause a crash on actual leaks as well. Incidentally, I can also reproduce this crash now on MSVC opt builds - likely bug 860254 made it show up much more consistently. With this patch, the crash is fixed for me on both MSVC opt and clang opt builds (I didn't retry gcc).
Attachment #8377694 - Attachment is obsolete: true
Attachment #8377694 - Flags: review?(bgirard)
Attachment #8378372 - Flags: review?(bobbyholley)
Attachment #8378372 - Flags: review?(bgirard)
Comment on attachment 8378372 [details] [diff] [review] Part 1: During shutdown, tell the profiler that the main thread JSRuntime is gone even if we leak. Review of attachment 8378372 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/xpconnect/src/nsXPConnect.cpp @@ +170,5 @@ > + // various JIT related structures in JS_ShutDown(), so we need to make > + // sure the SPS profiler can't access them when it shuts down. > + PseudoStack *stack = mozilla_get_pseudo_stack(); > + if (cnt && stack) > + stack->sampleRuntime(nullptr); There's no interesting JS activity after this point we want to track right?
(In reply to Benoit Girard (:BenWa) from comment #25) > There's no interesting JS activity after this point we want to track right? At this point in debug builds (or builds run with the XPCOM_CC_RUN_DURING_SHUTDOWN environment variable set), the JSRuntime is gone (and XPCJSRuntime::~XPCJSRuntime() will have called stack->sampleRuntime(nullptr)). In opt builds it's technically still alive, but JS_ShutDown() happens right afterward, so it's probably not safe to track anything even if we could. One of the things JS_ShutDown() does is call GlobalWorkerThreadState::finish(), which destroys the helper threads and associated condvars and locks.
Comment on attachment 8378372 [details] [diff] [review] Part 1: During shutdown, tell the profiler that the main thread JSRuntime is gone even if we leak. Review of attachment 8378372 [details] [diff] [review]: ----------------------------------------------------------------- ::: js/xpconnect/src/nsXPConnect.cpp @@ +158,1 @@ > nsXPConnect::ReleaseXPConnectSingleton() I don't understand - why do we want to do this here and not in ~XPCJSRuntime? Sorry if this is buried in the context of this bug somewhere. @@ +170,5 @@ > + // various JIT related structures in JS_ShutDown(), so we need to make > + // sure the SPS profiler can't access them when it shuts down. > + PseudoStack *stack = mozilla_get_pseudo_stack(); > + if (cnt && stack) > + stack->sampleRuntime(nullptr); This nulls out a stored runtime reference? The name here confuses me - it looks like it's taking a sample. Maybe be more explicit in the comments what exactly we're nulling out? I don't really know how the SPS profiler works.
Attachment #8378372 - Flags: review?(bgirard) → review+
(In reply to Bobby Holley (:bholley) from comment #27) > I don't understand - why do we want to do this here and not in > ~XPCJSRuntime? Sorry if this is buried in the context of this bug somewhere. We do this in ~XPCJSRuntime already - but that only gets called from ~nsXPConnect (http://dxr.mozilla.org/mozilla-central/source/js/xpconnect/src/nsXPConnect.cpp#120), so if the nsXPConnect object sticks around because there are still references to it, the ~XPCJSRuntime never happens and we're in trouble. Because we don't do the shutdown collection in opt builds (we leak intentionally), that's what ends up happening. > @@ +170,5 @@ > This nulls out a stored runtime reference? The name here confuses me - it > looks like it's taking a sample. Maybe be more explicit in the comments what > exactly we're nulling out? I don't really know how the SPS profiler works. It sets the runtime *to* sample. If you pass in nullptr, it nulls out its internal reference to the runtime and returns early. I agree the name is a bit confusing. How about this? // In optimized builds we don't do shutdown collections by default, // so uncollected (garbage) objects may keep the nsXPConnect singleton // alive, and its XPCJSRuntime along with it. However, we still // destroy various bits of state in JS_ShutDown(), so we need to make // sure the profiler can't access them when it shuts down. This call // nulls out the pseudo-stack's internal reference to the JSRuntime.
OK. In that case, this seems pretty divorced from XPConnect lifetime management, and it seems like it would make more sense to put this both in ~XPCJSRuntime and right before the call to JS_Shutdown, right?
The reason I put the call in nsXPConnect::ReleaseXPConnectSingleton() is that it's the last common point - if the ~nsXPConnect call happens as a result, the XPCJSRuntime is destroyed; if it doesn't, we leak. In addition I could gate the call on the reference count after the NS_RELEASE2 call. But I'm not particularly married to the location and this call is cheap, so here's a patch that moves it to just before JS_ShutDown in ShutdownXPCOM. I guess this is technically in a different module, so let me know if I should switch reviewer.
Attachment #8378372 - Attachment is obsolete: true
Attachment #8378372 - Flags: review?(bobbyholley)
Attachment #8378526 - Flags: review?(bobbyholley)
Comment on attachment 8378526 [details] [diff] [review] Part 1 v2: During shutdown, tell the profiler that the main thread JSRuntime is gone even if we leak. Review of attachment 8378526 [details] [diff] [review]: ----------------------------------------------------------------- r=bholley with that. ::: xpcom/build/nsXPComInit.cpp @@ +837,5 @@ > + // uncollected (garbage) objects may keep the nsXPConnect singleton alive, > + // and its XPCJSRuntime along with it. However, we still destroy various > + // bits of state in JS_ShutDown(), so we need to make sure the profiler > + // can't access them when it shuts down. This call nulls out the > + // JS pseudo-stack's internal reference to the main thread JSRuntime. Make a note here that we also invoke this in XPCJSRuntime::~XPCJSRuntime for the case where the Runtime dies correctly, and that this potentially-additional idempotent call is just guarding against the case where it doesn't die.
Attachment #8378526 - Flags: review?(bobbyholley) → review+
Carrying forward r=bholley. (In reply to Bobby Holley (:bholley) from comment #31) > Make a note here that we also invoke this in XPCJSRuntime::~XPCJSRuntime for > the case where the Runtime dies correctly, and that this > potentially-additional idempotent call is just guarding against the case > where it doesn't die. Done.
Attachment #8378526 - Attachment is obsolete: true
Attachment #8378688 - Flags: review+
Setting checkin-needed. This never showed up on tbpl so a full try push wouldn't make much sense (though it would be nice if we had better test coverage of this), but I made sure that this builds everywhere (using part 1 v1, admittedly): https://tbpl.mozilla.org/?tree=Try&rev=5a3b12ea97d6
Keywords: checkin-needed
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: