Twice reported memory blocks in DMD regarding asm.js compilation

RESOLVED FIXED in Firefox 47

Status

()

Core
JavaScript Engine
RESOLVED FIXED
2 years ago
2 years ago

People

(Reporter: Jukka Jylänki, Assigned: luke)

Tracking

unspecified
mozilla47
Points:
---

Firefox Tracking Flags

(firefox47 fixed)

Details

(Whiteboard: [MemShrink:P?])

Attachments

(1 attachment)

(Reporter)

Description

2 years ago
Running emunittest 0.5 suite in sequential stress test mode for a bit more than an hour and looking at the resulting DMD, it gives the following twice-reported blocks:

Twice-reported {
  ~73 blocks in heap block record 1 of 3
  ~2,789,253 bytes (~2,789,253 requested / ~0 slop)
  Individual block sizes: 262,144 x 5; 131,072 x 9; 8,192 x 14; 4,096 x 4; ~4,093 x 41
  0.06% of the heap (0.06% cumulative)
  94.58% of twice-reported (94.58% cumulative)
  Allocated at {
    #01: realloc_impl (d:\gecko-dev\memory\build\replace_malloc.c:193)
    #02: mozilla::detail::VectorImpl<unsigned int,4,js::SystemAllocPolicy,1>::growTo (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\mozilla\vector.h:237)
    #03: js::wasm::ModuleGenerator::finish (d:\gecko-dev\js\src\asmjs\wasmgenerator.cpp:591)
    #04: ModuleValidator::finish (d:\gecko-dev\js\src\asmjs\asmjs.cpp:2231)
    #05: CheckModule (d:\gecko-dev\js\src\asmjs\asmjs.cpp:7202)
    #06: js::CompileAsmJS (d:\gecko-dev\js\src\asmjs\asmjs.cpp:8479)
    #07: js::frontend::Parser<js::frontend::FullParseHandler>::asmJS (d:\gecko-dev\js\src\frontend\parser.cpp:3351)
    #08: js::frontend::Parser<js::frontend::FullParseHandler>::statements (d:\gecko-dev\js\src\frontend\parser.cpp:3491)
    #09: js::frontend::Parser<js::frontend::FullParseHandler>::functionBody (d:\gecko-dev\js\src\frontend\parser.cpp:1331)
    #10: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBodyGeneric (d:\gecko-dev\js\src\frontend\parser.cpp:3121)
    #11: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBody (d:\gecko-dev\js\src\frontend\parser.cpp:2926)
    #12: js::frontend::Parser<js::frontend::FullParseHandler>::functionDef (d:\gecko-dev\js\src\frontend\parser.cpp:2755)
    #13: js::frontend::Parser<js::frontend::FullParseHandler>::functionExpr (d:\gecko-dev\js\src\frontend\parser.cpp:3278)
    #14: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9063)
    #15: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #16: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #17: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
    #18: js::frontend::Parser<js::frontend::FullParseHandler>::expr (d:\gecko-dev\js\src\frontend\parser.cpp:7289)
    #19: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9104)
    #20: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #21: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #22: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
    #23: js::frontend::Parser<js::frontend::FullParseHandler>::initializerInNameDeclaration (d:\gecko-dev\js\src\frontend\parser.cpp:4527)
    #24: js::frontend::Parser<js::frontend::FullParseHandler>::declarationName (d:\gecko-dev\js\src\frontend\parser.cpp:4635)
  }
  Reported at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:236)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
  Reported again at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:240)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
}

Twice-reported {
  ~6 blocks in heap block record 2 of 3
  ~155,639 bytes (~155,639 requested / ~0 slop)
  Individual block sizes: 131,072; 8,192; 4,096; ~4,093 x 3
  0.00% of the heap (0.07% cumulative)
  5.28% of twice-reported (99.86% cumulative)
  Allocated at {
    #01: malloc_impl (d:\gecko-dev\memory\build\replace_malloc.c:153)
    #02: mozilla::Vector<unsigned int,32,js::SystemAllocPolicy>::convertToHeapStorage (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\mozilla\vector.h:804)
    #03: mozilla::Vector<unsigned int,0,js::SystemAllocPolicy>::resize (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\mozilla\vector.h:1028)
    #04: js::wasm::StaticLinkData::SymbolicLinkArray::deserialize (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:132)
    #05: js::wasm::StaticLinkData::deserialize (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:218)
    #06: js::AsmJSModule::deserialize (d:\gecko-dev\js\src\asmjs\asmjs.cpp:8002)
    #07: LookupAsmJSModuleInCache (d:\gecko-dev\js\src\asmjs\asmjs.cpp:8305)
    #08: js::CompileAsmJS (d:\gecko-dev\js\src\asmjs\asmjs.cpp:8469)
    #09: js::frontend::Parser<js::frontend::FullParseHandler>::asmJS (d:\gecko-dev\js\src\frontend\parser.cpp:3351)
    #10: js::frontend::Parser<js::frontend::FullParseHandler>::statements (d:\gecko-dev\js\src\frontend\parser.cpp:3491)
    #11: js::frontend::Parser<js::frontend::FullParseHandler>::functionBody (d:\gecko-dev\js\src\frontend\parser.cpp:1331)
    #12: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBodyGeneric (d:\gecko-dev\js\src\frontend\parser.cpp:3121)
    #13: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBody (d:\gecko-dev\js\src\frontend\parser.cpp:2926)
    #14: js::frontend::Parser<js::frontend::FullParseHandler>::functionDef (d:\gecko-dev\js\src\frontend\parser.cpp:2755)
    #15: js::frontend::Parser<js::frontend::FullParseHandler>::functionExpr (d:\gecko-dev\js\src\frontend\parser.cpp:3278)
    #16: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9063)
    #17: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #18: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #19: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
    #20: js::frontend::Parser<js::frontend::FullParseHandler>::expr (d:\gecko-dev\js\src\frontend\parser.cpp:7289)
    #21: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9104)
    #22: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #23: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #24: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
  }
  Reported at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:236)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
  Reported again at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:240)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
}

Twice-reported {
  ~1 block in heap block record 3 of 3
  ~4,093 bytes (~4,093 requested / ~0 slop)
  0.00% of the heap (0.07% cumulative)
  0.14% of twice-reported (100.00% cumulative)
  Allocated at {
    #01: malloc_impl (d:\gecko-dev\memory\build\replace_malloc.c:153)
    #02: mozilla::Vector<unsigned int,32,js::SystemAllocPolicy>::convertToHeapStorage (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\mozilla\vector.h:804)
    #03: js::wasm::ModuleGenerator::finish (d:\gecko-dev\js\src\asmjs\wasmgenerator.cpp:591)
    #04: ModuleValidator::finish (d:\gecko-dev\js\src\asmjs\asmjs.cpp:2231)
    #05: CheckModule (d:\gecko-dev\js\src\asmjs\asmjs.cpp:7202)
    #06: js::CompileAsmJS (d:\gecko-dev\js\src\asmjs\asmjs.cpp:8479)
    #07: js::frontend::Parser<js::frontend::FullParseHandler>::asmJS (d:\gecko-dev\js\src\frontend\parser.cpp:3351)
    #08: js::frontend::Parser<js::frontend::FullParseHandler>::statements (d:\gecko-dev\js\src\frontend\parser.cpp:3491)
    #09: js::frontend::Parser<js::frontend::FullParseHandler>::functionBody (d:\gecko-dev\js\src\frontend\parser.cpp:1331)
    #10: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBodyGeneric (d:\gecko-dev\js\src\frontend\parser.cpp:3121)
    #11: js::frontend::Parser<js::frontend::FullParseHandler>::functionArgsAndBody (d:\gecko-dev\js\src\frontend\parser.cpp:2926)
    #12: js::frontend::Parser<js::frontend::FullParseHandler>::functionDef (d:\gecko-dev\js\src\frontend\parser.cpp:2755)
    #13: js::frontend::Parser<js::frontend::FullParseHandler>::functionExpr (d:\gecko-dev\js\src\frontend\parser.cpp:3278)
    #14: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9063)
    #15: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #16: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #17: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
    #18: js::frontend::Parser<js::frontend::FullParseHandler>::expr (d:\gecko-dev\js\src\frontend\parser.cpp:7289)
    #19: js::frontend::Parser<js::frontend::FullParseHandler>::primaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:9104)
    #20: js::frontend::Parser<js::frontend::FullParseHandler>::memberExpr (d:\gecko-dev\js\src\frontend\parser.cpp:8377)
    #21: js::frontend::Parser<js::frontend::FullParseHandler>::unaryExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7897)
    #22: js::frontend::Parser<js::frontend::FullParseHandler>::assignExpr (d:\gecko-dev\js\src\frontend\parser.cpp:7588)
    #23: js::frontend::Parser<js::frontend::FullParseHandler>::initializerInNameDeclaration (d:\gecko-dev\js\src\frontend\parser.cpp:4527)
    #24: js::frontend::Parser<js::frontend::FullParseHandler>::declarationName (d:\gecko-dev\js\src\frontend\parser.cpp:4635)
  }
  Reported at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:236)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
  Reported again at {
    #01: mozilla::dmd::DMDFuncs::Report (d:\gecko-dev\memory\replace\dmd\dmd.cpp:1642)
    #02: mozilla::dmd::Report (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\dmd.h:110)
    #03: `anonymous namespace'::DOMEventListenerManagersHashReporter::MallocSizeOf (d:\gecko-dev\dom\base\nscontentutils.cpp:369)
    #04: js::wasm::StaticLinkData::sizeOfExcludingThis (d:\gecko-dev\js\src\asmjs\wasmmodule.cpp:240)
    #05: js::AsmJSModule::addSizeOfMisc (d:\gecko-dev\js\src\asmjs\asmjs.cpp:411)
    #06: StatsCellCallback<0> (d:\gecko-dev\js\src\vm\memorymetrics.cpp:421)
    #07: IterateCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:48)
    #08: js::IterateZonesCompartmentsArenasCells (d:\gecko-dev\js\src\gc\iteration.cpp:65)
    #09: CollectRuntimeStatsHelper (d:\gecko-dev\js\src\vm\memorymetrics.cpp:732)
    #10: JS::CollectRuntimeStats (d:\gecko-dev\js\src\vm\memorymetrics.cpp:804)
    #11: xpc::JSReporter::CollectReports (d:\gecko-dev\js\xpconnect\src\xpcjsruntime.cpp:2901)
    #12: nsWindowMemoryReporter::CollectReports (d:\gecko-dev\dom\base\nswindowmemoryreporter.cpp:526)
    #13: <lambda_860a0f373f6d141ec43c5e06f82cbcfb>::operator() (d:\gecko-dev\xpcom\base\nsmemoryreportermanager.cpp:1681)
    #14: nsRunnableFunction<<lambda_860a0f373f6d141ec43c5e06f82cbcfb> >::Run (d:\gecko-dev\obj-x86_64-pc-mingw32\dist\include\nsthreadutils.h:262)
    #15: nsThread::ProcessNextEvent (d:\gecko-dev\xpcom\threads\nsthread.cpp:989)
    #16: NS_ProcessNextEvent (d:\gecko-dev\xpcom\glue\nsthreadutils.cpp:297)
    #17: mozilla::ipc::MessagePump::Run (d:\gecko-dev\ipc\glue\messagepump.cpp:95)
    #18: MessageLoop::RunInternal (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:235)
    #19: MessageLoop::RunHandler (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:228)
    #20: MessageLoop::Run (d:\gecko-dev\ipc\chromium\src\base\message_loop.cc:202)
    #21: nsBaseAppShell::Run (d:\gecko-dev\widget\nsbaseappshell.cpp:158)
    #22: nsAppShell::Run (d:\gecko-dev\widget\windows\nsappshell.cpp:257)
    #23: nsAppStartup::Run (d:\gecko-dev\toolkit\components\startup\nsappstartup.cpp:281)
    #24: XREMain::XRE_mainRun (d:\gecko-dev\toolkit\xre\nsapprunner.cpp:4326)
  }
}

There are no other twice-reported blocks at all. Are twice-reported blocks a bug, or how should those be interpreted?
(Assignee)

Comment 1

2 years ago
Yeah, it just means it's being over-counted in about:memory.  Nice job DMD and thanks for reporting Jukka!
Whiteboard: [MemShrink:P?]
(Assignee)

Comment 2

2 years ago
Created attachment 8720374 [details] [diff] [review]
remove-dup-report

Oops; trivial fix.  Thanks for reporting Jukka.
Assignee: nobody → luke
Status: NEW → ASSIGNED
Attachment #8720374 - Flags: review?(bbouvier)
Comment on attachment 8720374 [details] [diff] [review]
remove-dup-report

Review of attachment 8720374 [details] [diff] [review]:
-----------------------------------------------------------------

Doh!
Attachment #8720374 - Flags: review?(bbouvier) → review+

Comment 4

2 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/ded9e2d81845

Comment 5

2 years ago
bugherder
https://hg.mozilla.org/mozilla-central/rev/ded9e2d81845
Status: ASSIGNED → RESOLVED
Last Resolved: 2 years ago
status-firefox47: --- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla47
You need to log in before you can comment on or make changes to this bug.