// Memory-related non-leaf locks
lockRankWbufSpans
lockRankMheap
+ lockRankMheapSpecial
// Memory-related leaf locks
- lockRankMheapSpecial
lockRankGlobalAlloc
// Other leaf locks
lockRankDefer: "defer",
lockRankSudog: "sudog",
- lockRankWbufSpans: "wbufSpans",
- lockRankMheap: "mheap",
-
+ lockRankWbufSpans: "wbufSpans",
+ lockRankMheap: "mheap",
lockRankMheapSpecial: "mheapSpecial",
- lockRankGlobalAlloc: "globalAlloc.mutex",
+
+ lockRankGlobalAlloc: "globalAlloc.mutex",
lockRankGFree: "gFree",
lockRankWbufSpans: {lockRankScavenge, lockRankSweepWaiters, lockRankAssistQueue, lockRankSweep, lockRankSched, lockRankAllg, lockRankPollDesc, lockRankTimers, lockRankItab, lockRankReflectOffs, lockRankHchan, lockRankNotifyList, lockRankTraceStrings, lockRankMspanSpecial, lockRankProf, lockRankRoot, lockRankDefer, lockRankSudog},
lockRankMheap: {lockRankScavenge, lockRankSweepWaiters, lockRankAssistQueue, lockRankCpuprof, lockRankSweep, lockRankSched, lockRankAllg, lockRankAllp, lockRankPollDesc, lockRankTimers, lockRankItab, lockRankReflectOffs, lockRankNotifyList, lockRankTraceBuf, lockRankTraceStrings, lockRankHchan, lockRankMspanSpecial, lockRankProf, lockRankGcBitsArenas, lockRankRoot, lockRankMcentral, lockRankStackpool, lockRankStackLarge, lockRankDefer, lockRankSudog, lockRankWbufSpans},
lockRankMheapSpecial: {lockRankScavenge, lockRankCpuprof, lockRankSched, lockRankAllg, lockRankAllp, lockRankTimers, lockRankItab, lockRankReflectOffs, lockRankNotifyList, lockRankTraceBuf, lockRankTraceStrings, lockRankHchan},
- lockRankGlobalAlloc: {lockRankSpine, lockRankMheap},
+ lockRankGlobalAlloc: {lockRankProf, lockRankSpine, lockRankMheap, lockRankMheapSpecial},
lockRankGFree: {lockRankSched},
lockInit(&h.lock, lockRankMheap)
lockInit(&h.sweepSpans[0].spineLock, lockRankSpine)
lockInit(&h.sweepSpans[1].spineLock, lockRankSpine)
+ lockInit(&h.speciallock, lockRankMheapSpecial)
h.spanalloc.init(unsafe.Sizeof(mspan{}), recordspan, unsafe.Pointer(h), &memstats.mspan_sys)
h.cachealloc.init(unsafe.Sizeof(mcache{}), nil, nil, &memstats.mcache_sys)