Closed Bug 1666235 Opened 4 years ago Closed 2 years ago

Intermittent SUMMARY: ThreadSanitizer: data race /builds/worker/workspace/obj-build/dist/include/js/TracingAPI.h:264:54 in dispatchToOnEdge

Categories

(Core :: JavaScript: GC, defect, P5)

defect

Tracking

()

RESOLVED FIXED

People

(Reporter: intermittent-bug-filer, Assigned: decoder)

References

(Blocks 1 open bug)

Details

(Keywords: intermittent-failure)

Filed by: btara [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer.html#?job_id=316239197&repo=autoland
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/YUiLPefxRUqnhGDHNOatIg/runs/0/artifacts/public/logs/live_backing.log


[task 2020-09-21T11:25:09.325Z] 11:25:09 INFO - TEST-START | layout/base/tests/test_bug1080361.html
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | ==================
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | WARNING: ThreadSanitizer: data race (pid=3336)
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | Read of size 8 at 0x7fb86fb73358 by thread T7:
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | #0 dispatchToOnEdge /builds/worker/workspace/obj-build/dist/include/js/TracingAPI.h:264:54 (libxul.so+0x6e3b558)
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | #1 bool DoCallback<js::Shape>(JS::CallbackTracer*, js::Shape**, char const*) /builds/worker/checkouts/gecko/js/src/gc/Tracer.cpp:45:15 (libxul.so+0x6e3b558)
[task 2020-09-21T11:25:10.302Z] 11:25:10 INFO - GECKO(3199) | #2 bool js::gc::TraceEdgeInternal<js::Shape*>(JSTracer*, js::Shape**, char const*) /builds/worker/checkouts/gecko/js/src/gc/Marking.cpp:705:10 (libxul.so+0x6ea912b)
[task 2020-09-21T11:25:10.303Z] 11:25:10 INFO - GECKO(3199) | #3 TraceEdge<js::Shape > /builds/worker/checkouts/gecko/js/src/gc/Tracer.h:130:3 (libxul.so+0x6e957e3)
[task 2020-09-21T11:25:10.303Z] 11:25:10 INFO - GECKO(3199) | #4 TraceNullableEdge<js::Shape > /builds/worker/checkouts/gecko/js/src/gc/Tracer.h:158:5 (libxul.so+0x6e957e3)
[task 2020-09-21T11:25:10.303Z] 11:25:10 INFO - GECKO(3199) | #5 js::Scope::traceChildren(JSTracer
) /builds/worker/checkouts/gecko/js/src/gc/Marking.cpp:1441:3 (libxul.so+0x6e957e3)
[task 2020-09-21T11:25:10.303Z] 11:25:10 INFO - GECKO(3199) | #6 UpdateCellPointers<js::Scope> /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2275:9 (libxul.so+0x6e7a970)
[task 2020-09-21T11:25:10.309Z] 11:25:10 INFO - GECKO(3199) | #7 UpdateArenaPointersTyped<js::Scope> /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2281:5 (libxul.so+0x6e7a970)
[task 2020-09-21T11:25:10.310Z] 11:25:10 INFO - GECKO(3199) | #8 UpdateArenaPointers /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2310:5 (libxul.so+0x6e7a970)
[task 2020-09-21T11:25:10.310Z] 11:25:10 INFO - GECKO(3199) | #9 UpdateArenaListSegmentPointers(js::gc::GCRuntime
, ArenaListSegment const&) /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2334:5 (libxul.so+0x6e7a970)
[task 2020-09-21T11:25:10.311Z] 11:25:10 INFO - GECKO(3199) | #10 js::gc::ParallelWorker<ArenaListSegment, ArenasToUpdate>::run(js::AutoLockHelperThreadState&) /builds/worker/checkouts/gecko/js/src/gc/ParallelWork.h:58:22 (libxul.so+0x6e3df7c)
[task 2020-09-21T11:25:10.311Z] 11:25:10 INFO - GECKO(3199) | #11 runTask /builds/worker/checkouts/gecko/js/src/gc/GCParallelTask.cpp:145:3 (libxul.so+0x6e71a29)
[task 2020-09-21T11:25:10.311Z] 11:25:10 INFO - GECKO(3199) | #12 js::GCParallelTask::runHelperThreadTask(js::AutoLockHelperThreadState&) /builds/worker/checkouts/gecko/js/src/gc/GCParallelTask.cpp:132:3 (libxul.so+0x6e71a29)
[task 2020-09-21T11:25:10.311Z] 11:25:10 INFO - GECKO(3199) | #13 runTaskLocked /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:2582:9 (libxul.so+0x6e63b5f)
[task 2020-09-21T11:25:10.311Z] 11:25:10 INFO - GECKO(3199) | #14 js::HelperThread::threadLoop() /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:2554:25 (libxul.so+0x6e63b5f)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | #15 js::HelperThread::ThreadMain(void*) /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:2272:11 (libxul.so+0x692f456)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | #16 callMain<0> /builds/worker/checkouts/gecko/js/src/threading/Thread.h:217:5 (libxul.so+0x692f2bd)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | #17 js::detail::ThreadTrampoline<void (&)(void*), js::HelperThread*>::Start(void*) /builds/worker/checkouts/gecko/js/src/threading/Thread.h:206:11 (libxul.so+0x692f2bd)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | #18 __tsan_thread_start_func /builds/worker/fetches/llvm-project/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:956:15 (libxul.so+0x6945300)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | #19 posix_memalign /builds/worker/fetches/llvm-project/llvm/projects/compiler-rt/lib/tsan/rtl/tsan_interceptors_posix.cpp:836:3 (firefox+0x5954c)
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | Previous write of size 8 at 0x7fb86fb73358 by main thread:
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | [failed to restore the stack]
[task 2020-09-21T11:25:10.312Z] 11:25:10 INFO - GECKO(3199) | Thread T7 'JS Helper' (tid=3360, running) created by main thread at:
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #0 js::Thread::create(void* ()(void), void*) /builds/worker/checkouts/gecko/js/src/threading/posix/PosixThread.cpp:52:7 (firefox+0x595eb)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #1 bool js::Thread::init<void (&)(void*), js::HelperThread*>(void (&)(void*), js::HelperThread*&&) /builds/worker/checkouts/gecko/js/src/threading/Thread.h:90:12 (libxul.so+0x682b973)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #2 init /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:2226:17 (libxul.so+0x692f1d2)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #3 js::GlobalHelperThreadState::ensureThreadCount(unsigned long) /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:1247:29 (libxul.so+0x692f1d2)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #4 ensureInitialized /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:1214:10 (libxul.so+0x692af0c)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #5 js::EnsureHelperThreadsInitialized() /builds/worker/checkouts/gecko/js/src/vm/HelperThreads.cpp:101:30 (libxul.so+0x692af0c)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #6 JSRuntime::init(JSContext*, unsigned int) /builds/worker/checkouts/gecko/js/src/vm/Runtime.cpp:201:32 (libxul.so+0x69256f2)
[task 2020-09-21T11:25:10.313Z] 11:25:10 INFO - GECKO(3199) | #7 js::NewContext(unsigned int, JSRuntime*) /builds/worker/checkouts/gecko/js/src/vm/JSContext.cpp:192:17 (libxul.so+0x6a2de92)
[task 2020-09-21T11:25:10.314Z] 11:25:10 INFO - GECKO(3199) | #8 JS_NewContext(unsigned int, JSRuntime*) /builds/worker/checkouts/gecko/js/src/jsapi.cpp:398:10 (libxul.so+0x6968c4f)
[task 2020-09-21T11:25:10.314Z] 11:25:10 INFO - GECKO(3199) | #9 mozilla::CycleCollectedJSContext::Initialize(JSRuntime*, unsigned int) /builds/worker/checkouts/gecko/xpcom/base/CycleCollectedJSContext.cpp:127:16 (libxul.so+0x67c6134)
[task 2020-09-21T11:25:10.314Z] 11:25:10 INFO - GECKO(3199) | #10 XPCJSContext::Initialize() /builds/worker/checkouts/gecko/js/xpconnect/src/XPCJSContext.cpp:1176:32 (libxul.so+0xa4e39b)
[task 2020-09-21T11:25:10.315Z] 11:25:10 INFO - GECKO(3199) | #11 XPCJSContext::NewXPCJSContext() /builds/worker/checkouts/gecko/js/xpconnect/src/XPCJSContext.cpp:1378:23 (libxul.so+0x19d581a)
[task 2020-09-21T11:25:10.315Z] 11:25:10 INFO - GECKO(3199) | #12 InitJSContext /builds/worker/checkouts/gecko/js/xpconnect/src/nsXPConnect.cpp:82:25 (libxul.so+0x19d6457)
[task 2020-09-21T11:25:10.316Z] 11:25:10 INFO - GECKO(3199) | #13 xpc::InitializeJSContext() /builds/worker/checkouts/gecko/js/xpconnect/src/nsXPConnect.cpp:97:35 (libxul.so+0x19d6457)
[task 2020-09-21T11:25:10.316Z] 11:25:10 INFO - GECKO(3199) | #14 NS_InitXPCOM /builds/worker/checkouts/gecko/xpcom/build/XPCOMInit.cpp:490:5 (libxul.so+0x1a11ce3)
[task 2020-09-21T11:25:10.319Z] 11:25:10 INFO - GECKO(3199) | #15 XRE_InitEmbedding2(nsIFile*, nsIFile*, nsIDirectoryServiceProvider*) /builds/worker/checkouts/gecko/toolkit/xre/nsEmbedFunctions.cpp:197:8 (libxul.so+0xb88132)
[task 2020-09-21T11:25:10.319Z] 11:25:10 INFO - GECKO(3199) | #16 mozilla::ipc::ScopedXREEmbed::Start() /builds/worker/checkouts/gecko/ipc/glue/ScopedXREEmbed.cpp (libxul.so+0x65ed2b4)
[task 2020-09-21T11:25:10.320Z] 11:25:10 INFO - GECKO(3199) | #17 mozilla::dom::ContentProcess::Init(int, char**) /builds/worker/checkouts/gecko/dom/ipc/ContentProcess.cpp:181:13 (libxul.so+0x1432fc4)
[task 2020-09-21T11:25:10.320Z] 11:25:10 INFO - GECKO(3199) | #18 XRE_InitChildProcess(int, char**, XREChildData const*) /builds/worker/checkouts/gecko/toolkit/xre/nsEmbedFunctions.cpp:710:21 (libxul.so+0x455eda6)
[task 2020-09-21T11:25:10.320Z] 11:25:10 INFO - GECKO(3199) | #19 mozilla::BootstrapImpl::XRE_InitChildProcess(int, char**, XREChildData const*) /builds/worker/checkouts/gecko/toolkit/xre/Bootstrap.cpp:67:12 (libxul.so+0x65edaf3)
[task 2020-09-21T11:25:10.321Z] 11:25:10 INFO - GECKO(3199) | #20 content_process_main /builds/worker/checkouts/gecko/browser/app/../../ipc/contentproc/plugin-container.cpp:56:28 (libxul.so+0x65f5cd2)
[task 2020-09-21T11:25:10.321Z] 11:25:10 INFO - GECKO(3199) | #21 main /builds/worker/checkouts/gecko/browser/app/nsBrowserApp.cpp:304:18 (libxul.so+0x65f5cd2)
[task 2020-09-21T11:25:10.322Z] 11:25:10 INFO - GECKO(3199) | #22 __libc_start_main /build/glibc-2ORdQG/glibc-2.27/csu/../csu/libc-start.c:310 (firefox+0xca852)
[task 2020-09-21T11:25:10.322Z] 11:25:10 INFO - GECKO(3199) | #23 isForwarded /builds/worker/checkouts/gecko/js/src/gc/Cell.h:132:37 (libc.so.6+0x21b96)
[task 2020-09-21T11:25:10.323Z] 11:25:10 INFO - GECKO(3199) | #24 IsForwarded<js::Shape> /builds/worker/checkouts/gecko/js/src/gc/Marking-inl.h:82:13 (libc.so.6+0x21b96)
[task 2020-09-21T11:25:10.323Z] 11:25:10 INFO - GECKO(3199) | #25 updateEdge<js::Shape> /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2184:53 (libc.so.6+0x21b96)
[task 2020-09-21T11:25:10.324Z] 11:25:10 INFO - GECKO(3199) | #26 js::gc::MovingTracer::onShapeEdge(js::Shape**) /builds/worker/checkouts/gecko/js/src/gc/GC.cpp:2192:57 (libc.so.6+0x21b96)
[task 2020-09-21T11:25:10.324Z] 11:25:10 INFO - GECKO(3199) | SUMMARY: ThreadSanitizer: data race /builds/worker/workspace/obj-build/dist/include/js/TracingAPI.h:264:54 in dispatchToOnEdge
[task 2020-09-21T11:25:10.324Z] 11:25:10 INFO - GECKO(3199) | ==================
[task 2020-09-21T11:25:10.367Z] 11:25:10 INFO - GECKO(3199) | ###!!! [Parent][MessageChannel] Error: (msgtype=0x380146,name=PContent::Msg_AsyncMessage) Channel error: cannot send/recv
[task 2020-09-21T11:25:10.384Z] 11:25:10 ERROR - GECKO(3199) | A content process crashed and MOZ_CRASHREPORTER_SHUTDOWN is set, shutting down
[task 2020-09-21T11:25:12.182Z] 11:25:12 INFO - GECKO(3199) | 1600687512179 Marionette TRACE Received observer notification xpcom-will-shutdown
[task 2020-09-21T11:25:12.182Z] 11:25:12 INFO - GECKO(3199) | 1600687512180 Marionette INFO Stopped listening on port 2828
[task 2020-09-21T11:25:12.185Z] 11:25:12 INFO - GECKO(3199) | 1600687512181 Marionette DEBUG Marionette stopped listening
[task 2020-09-21T11:25:17.736Z] 11:25:17 INFO - TEST-INFO | Main app process: exit 0
[task 2020-09-21T11:25:17.736Z] 11:25:17 INFO - runtests.py | Application ran for: 0:00:39.054795
[task 2020-09-21T11:25:17.737Z] 11:25:17 INFO - zombiecheck | Reading PID log: /tmp/tmpzxo9uzpidlog
[task 2020-09-21T11:25:17.737Z] 11:25:17 INFO - ==> process 3199 launched child process 3214
[task 2020-09-21T11:25:17.738Z] 11:25:17 INFO - ==> process 3199 launched child process 3318
[task 2020-09-21T11:25:17.738Z] 11:25:17 INFO - ==> process 3199 launched child process 3336
[task 2020-09-21T11:25:17.738Z] 11:25:17 INFO - ==> process 3199 launched child process 3405
[task 2020-09-21T11:25:17.738Z] 11:25:17 INFO - ==> process 3199 launched child process 3434
[task 2020-09-21T11:25:17.739Z] 11:25:17 INFO - zombiecheck | Checking for orphan process with PID: 3336
[task 2020-09-21T11:25:17.739Z] 11:25:17 INFO - zombiecheck | Checking for orphan process with PID: 3434
[task 2020-09-21T11:25:17.740Z] 11:25:17 INFO - zombiecheck | Checking for orphan process with PID: 3318
[task 2020-09-21T11:25:17.740Z] 11:25:17 INFO - zombiecheck | Checking for orphan process with PID: 3214
[task 2020-09-21T11:25:17.740Z] 11:25:17 INFO - zombiecheck | Checking for orphan process with PID: 3405
[task 2020-09-21T11:25:17.740Z] 11:25:17 INFO - Stopping web server
[task 2020-09-21T11:25:17.756Z] 11:25:17 INFO - Stopping web socket server
[task 2020-09-21T11:25:17.771Z] 11:25:17 INFO - Stopping ssltunnel
[task 2020-09-21T11:25:17.792Z] 11:25:17 WARNING - leakcheck | refcount logging is off, so leaks can't be detected!
[task 2020-09-21T11:25:17.792Z] 11:25:17 INFO - runtests.py | Running tests: end.
[task 2020-09-21T11:25:17.807Z] 11:25:17 INFO - Buffered messages logged at 11:25:09
[task 2020-09-21T11:25:17.807Z] 11:25:17 INFO - TEST-PASS | layout/base/tests/test_bug1080361.html | A valid string reason is expected
[task 2020-09-21T11:25:17.807Z] 11:25:17 INFO - TEST-PASS | layout/base/tests/test_bug1080361.html | Reason cannot be empty
[task 2020-09-21T11:25:17.807Z] 11:25:17 INFO - Buffered messages logged at 11:25:10
[task 2020-09-21T11:25:17.807Z] 11:25:17 INFO - TEST-PASS | layout/base/tests/test_bug1080361.html | Exception NotFoundError should be fired
[task 2020-09-21T11:25:17.808Z] 11:25:17 INFO - TEST-PASS | layout/base/tests/test_bug1080361.html | Exception InvalidStateError should be fired
[task 2020-09-21T11:25:17.808Z] 11:25:17 INFO - Buffered messages finished

This is a duplicate, the suppression is missing a frame. I already have a local fix for this and will land it soon with some other suppression fixes.

Assignee: nobody → choller
Flags: needinfo?(choller)

This was likely fixed in a different bug.

Status: NEW → RESOLVED
Closed: 2 years ago
Flags: needinfo?(choller)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.