runtime.g.m (field)
507 uses
runtime (current package)
atomic_pointer.go#L23: if !getg().m.p.ptr().wbBuf.putFast(*slot, uintptr(new)) {
cgocall.go#L133: mp := getg().m
cgocall.go#L202: if gp != gp.m.curg {
cgocall.go#L215: syscall := gp.m.syscall
cgocall.go#L224: gp.m.incgo = false
cgocall.go#L226: osPreemptExtExit(gp.m)
cgocall.go#L234: osPreemptExtEnter(gp.m)
cgocall.go#L236: gp.m.incgo = true
cgocall.go#L240: gp.m.syscall = syscall
cgocall.go#L245: if gp.m.needextram || atomic.Load(&extraMWaiters) > 0 {
cgocall.go#L246: gp.m.needextram = false
cgocall.go#L271: if gp.m.ncgo == 0 {
cgocheck.go#L36: if g == g.m.g0 || g == g.m.gsignal {
cgocheck.go#L42: if g.m.mallocing != 0 {
debugcall.go#L28: if getg() != getg().m.curg {
debugcall.go#L123: mp := gp.m
debugcall.go#L177: mp := gp.m
debugcall.go#L203: gp.m.lockedg = 0
debuglog.go#L109: if gp != nil && gp.m != nil && gp.m.p != 0 {
debuglog.go#L110: l.w.varint(int64(gp.m.p.ptr().id))
heapdump.go#L365: dumpint(uint64(uintptr(unsafe.Pointer(gp.m))))
heapdump.go#L695: casgstatus(_g_.m.curg, _Grunning, _Gwaiting)
heapdump.go#L716: casgstatus(_g_.m.curg, _Gwaiting, _Grunning)
iface.go#L126: if getg().m.mallocing != 0 {
lock_sema.go#L41: if gp.m.locks < 0 {
lock_sema.go#L44: gp.m.locks++
lock_sema.go#L50: semacreate(gp.m)
lock_sema.go#L78: gp.m.nextwaitm = muintptr(v &^ locked)
lock_sema.go#L79: if atomic.Casuintptr(&l.key, v, uintptr(unsafe.Pointer(gp.m))|locked) {
lock_sema.go#L122: gp.m.locks--
lock_sema.go#L123: if gp.m.locks < 0 {
lock_sema.go#L126: if gp.m.locks == 0 && gp.preempt { // restore the preemption request in case we've cleared it in newstack
lock_sema.go#L167: if gp != gp.m.g0 {
lock_sema.go#L170: semacreate(gp.m)
lock_sema.go#L171: if !atomic.Casuintptr(&n.key, 0, uintptr(unsafe.Pointer(gp.m))) {
lock_sema.go#L179: gp.m.blocked = true
lock_sema.go#L190: gp.m.blocked = false
lock_sema.go#L202: if !atomic.Casuintptr(&n.key, 0, uintptr(unsafe.Pointer(gp.m))) {
lock_sema.go#L211: gp.m.blocked = true
lock_sema.go#L221: gp.m.blocked = false
lock_sema.go#L228: gp.m.blocked = true
lock_sema.go#L233: gp.m.blocked = false
lock_sema.go#L241: gp.m.blocked = false
lock_sema.go#L257: case uintptr(unsafe.Pointer(gp.m)):
lock_sema.go#L265: gp.m.blocked = true
lock_sema.go#L269: gp.m.blocked = false
lock_sema.go#L279: if gp != gp.m.g0 {
lock_sema.go#L282: semacreate(gp.m)
lock_sema.go#L290: if gp == gp.m.g0 {
lock_sema.go#L293: semacreate(gp.m)
malloc.go#L950: if assistG.m.curg != nil {
malloc.go#L951: assistG = assistG.m.curg
malloc.go#L1233: if g := getg(); g == g.m.gsignal {
mbitmap.go#L350: getg().m.traceback = 2
mbitmap.go#L585: buf := &getg().m.p.ptr().wbBuf
mbitmap.go#L627: buf := &getg().m.p.ptr().wbBuf
mbitmap.go#L653: buf := &getg().m.p.ptr().wbBuf
mbitmap.go#L714: buf := &getg().m.p.ptr().wbBuf
mbitmap.go#L2001: if _g_ := getg(); _g_.m.curg.stack.lo <= uintptr(p) && uintptr(p) < _g_.m.curg.stack.hi {
mbitmap.go#L2005: gentraceback(_g_.m.curg.sched.pc, _g_.m.curg.sched.sp, 0, _g_.m.curg, 0, nil, 1000, getgcmaskcb, noescape(unsafe.Pointer(&frame)), 0)
mcache.go#L127: pp := getg().m.p.ptr()
mcheckmark.go#L85: getg().m.traceback = 2
mgc.go#L697: if gp == nil || gp.m == nil || gp.m.p == 0 {
mgc.go#L700: myID := gp.m.p.ptr().id
mgc.go#L805: p := getg().m.p.ptr()
mgc.go#L1518: gp := getg().m.curg
mgc.go#L1561: getg().m.preemptoff = "gcing"
mgc.go#L1590: getg().m.preemptoff = ""
mgc.go#L1638: _g_.m.traceback = 2
mgc.go#L1639: gp := _g_.m.curg
mgc.go#L1668: gcw := &getg().m.p.ptr().gcw
mgc.go#L1670: wbBufFlush1(getg().m.p.ptr())
mgc.go#L1680: _g_.m.traceback = 0
mgc.go#L1883: gp.m.preemptoff = "GC worker init"
mgc.go#L1885: gp.m.preemptoff = ""
mgc.go#L1947: pp := gp.m.p.ptr() // P can't change with preemption disabled.
mgcmark.go#L211: userG := getg().m.curg
mgcmark.go#L390: if getg() == gp.m.g0 {
mgcmark.go#L393: if mp := getg().m; mp.locks > 0 || mp.preemptoff != "" {
mgcmark.go#L537: gcw := &getg().m.p.ptr().gcw
mgcmark.go#L568: _p_ := gp.m.p.ptr()
mgcmark.go#L986: gp := getg().m.curg
mgcmark.go#L1104: gp := getg().m.curg
mgcmark.go#L1396: gcw := &getg().m.p.ptr().gcw
mgcmark.go#L1425: getg().m.traceback = 2
mgcmark.go#L1529: gcw := &getg().m.p.ptr().gcw
mgcsweep.go#L194: _g_.m.locks++
mgcsweep.go#L196: _g_.m.locks--
mgcsweep.go#L270: _g_.m.locks--
mgcsweep.go#L291: if _g_.m.locks == 0 && _g_.m.mallocing == 0 && _g_ != _g_.m.g0 {
mgcsweep.go#L324: if _g_.m.locks == 0 && _g_.m.mallocing == 0 && _g_ != _g_.m.g0 {
mgcsweep.go#L465: getg().m.p.ptr().traceReclaimed += uintptr(nfreed) * s.elemsize
mgcwork.go#L469: gp := getg().m.curg
mheap.go#L1038: pp := getg().m.p.ptr()
mheap.go#L1063: pp := getg().m.p.ptr()
mheap.go#L1095: pp := getg().m.p.ptr()
mheap.go#L1137: pp := gp.m.p.ptr()
mheap.go#L1503: gp.m.mallocing++
mheap.go#L1511: gp.m.mallocing--
mprof.go#L418: if gp.m.curg == nil || gp.m.curg == gp {
mprof.go#L421: nstk = gcallers(gp.m.curg, skip, stk[:])
mprof.go#L818: g0.m.traceback = 1
mprof.go#L825: g0.m.traceback = 0
mprof.go#L844: gp.m.traceback = 2
mprof.go#L850: if gp.m.curg == nil || gp == gp.m.curg {
mprof.go#L858: goroutineheader(gp.m.curg)
mprof.go#L859: traceback(^uintptr(0), ^uintptr(0), 0, gp.m.curg)
mprof.go#L862: gp.m.traceback = 0
mprof.go#L869: gp.m.traceback = 2
mprof.go#L878: gp.m.traceback = 0
mprof.go#L885: gp.m.traceback = 2
mprof.go#L891: gp.m.traceback = 0
mstats.go#L863: if pp := getg().m.p.ptr(); pp != nil {
mstats.go#L886: if pp := getg().m.p.ptr(); pp != nil {
mwbbuf.go#L179: if getg().m.dying > 0 {
mwbbuf.go#L183: getg().m.p.ptr().wbBuf.discard()
mwbbuf.go#L193: getg().m.p.ptr().wbBuf.discard()
mwbbuf.go#L201: wbBufFlush1(getg().m.p.ptr())
os_darwin.go#L41: mp := getg().m
os_darwin.go#L297: mp.gsignal.m = mp
os_darwin.go#L315: getg().m.procid = uint64(pthread_self())
panic.go#L39: if gp != nil && gp.m != nil && gp.m.mallocing != 0 {
panic.go#L53: if gp != nil && gp.m != nil && gp.m.mallocing != 0 {
panic.go#L225: if gp.m.curg != gp {
panic.go#L278: if gp.m.curg != gp {
panic.go#L397: pp := gp.m.p.ptr()
panic.go#L451: pp := getg().m.p.ptr()
panic.go#L887: if gp.m.curg != gp {
panic.go#L894: if gp.m.mallocing != 0 {
panic.go#L900: if gp.m.preemptoff != "" {
panic.go#L905: print(gp.m.preemptoff)
panic.go#L909: if gp.m.locks != 0 {
panic.go#L1114: if gp.m.throwing == 0 {
panic.go#L1115: gp.m.throwing = 1
panic.go#L1248: _g_.m.mallocing++
panic.go#L1252: if _g_.m.locks < 0 {
panic.go#L1253: _g_.m.locks = 1
panic.go#L1256: switch _g_.m.dying {
panic.go#L1259: _g_.m.dying = 1
panic.go#L1270: _g_.m.dying = 2
panic.go#L1276: _g_.m.dying = 3
panic.go#L1304: if gp != gp.m.curg {
panic.go#L1307: if gp != gp.m.g0 {
panic.go#L1311: } else if level >= 2 || _g_.m.throwing > 0 {
panic.go#L1345: _m_ := _g_.m
panic.go#L1389: if gp.m.incgo || findfunc(pc).valid() {
preempt.go#L106: if mp := getg().m; mp.curg != nil && readgstatus(mp.curg) == _Grunning {
preempt.go#L195: if gp.preemptStop && gp.preempt && gp.stackguard0 == stackPreempt && asyncM == gp.m && atomic.Load(&asyncM.preemptGen) == asyncGen {
preempt.go#L210: asyncM2 := gp.m
preempt.go#L344: return (gp.preempt || gp.m.p != 0 && gp.m.p.ptr().preempt) && readgstatus(gp)&^_Gscan == _Grunning
preempt.go#L364: mp := gp.m
print.go#L67: mp := getg().m
print.go#L77: mp := getg().m
print.go#L97: if gp == nil || gp.writebuf == nil || gp.m.dying > 0 {
proc.go#L120: g.m.g0.racectx = 0
proc.go#L157: if g.m != &m0 {
proc.go#L489: return gp.lockedm != 0 && gp.m.lockedg != 0
proc.go#L637: mcommoninit(_g_.m, -1)
proc.go#L644: sigsave(&_g_.m.sigmask)
proc.go#L645: initSigmask = _g_.m.sigmask
proc.go#L726: if _g_ != _g_.m.g0 {
proc.go#L789: runqput(_g_.m.p.ptr(), gp, next)
proc.go#L983: gp.m.preemptoff = reason
proc.go#L1078: if _g_.m.locks > 0 {
proc.go#L1087: _g_.m.p.ptr().status = _Pgcstop // Pgcstop is only diagnostic.
proc.go#L1287: if _g_ != _g_.m.g0 {
proc.go#L1301: if _g_.m == &m0 {
proc.go#L1305: if fn := _g_.m.mstartfn; fn != nil {
proc.go#L1309: if _g_.m != &m0 {
proc.go#L1310: acquirep(_g_.m.nextp.ptr())
proc.go#L1311: _g_.m.nextp = 0
proc.go#L1340: notesleep(&g.m.park)
proc.go#L1341: noteclear(&g.m.park)
proc.go#L1360: m := g.m
proc.go#L1471: _p_ := getg().m.p.ptr()
proc.go#L1599: tid := _g_.m.procid
proc.go#L1684: p := getg().m.p.ptr()
proc.go#L1723: if _g_.m.p == 0 {
proc.go#L1763: mp.g0.m = mp
proc.go#L1765: if _p_ == _g_.m.p.ptr() {
proc.go#L1768: releasem(_g_.m)
proc.go#L1914: gp.m = mp
proc.go#L1966: mp := getg().m
proc.go#L1995: return uintptr(unsafe.Pointer(getg().m))
proc.go#L2078: if gp := getg(); gp != nil && gp.m != nil && (gp.m.lockedExt != 0 || gp.m.incgo) && GOOS != "plan9" {
proc.go#L2163: lock(&_g_.m.mFixup.lock)
proc.go#L2164: fn := _g_.m.mFixup.fn
proc.go#L2179: *(*uintptr)(unsafe.Pointer(&_g_.m.mFixup.fn)) = 0
proc.go#L2195: unlock(&_g_.m.mFixup.lock)
proc.go#L2244: if _g_.m.locks != 0 {
proc.go#L2247: if _g_.m.p != 0 {
proc.go#L2250: if _g_.m.spinning {
proc.go#L2255: mput(_g_.m)
proc.go#L2258: acquirep(_g_.m.nextp.ptr())
proc.go#L2259: _g_.m.nextp = 0
proc.go#L2264: getg().m.spinning = true
proc.go#L2441: if _g_.m.lockedg == 0 || _g_.m.lockedg.ptr().lockedm.ptr() != _g_.m {
proc.go#L2444: if _g_.m.p != 0 {
proc.go#L2452: status := readgstatus(_g_.m.lockedg.ptr())
proc.go#L2455: dumpgstatus(_g_.m.lockedg.ptr())
proc.go#L2458: acquirep(_g_.m.nextp.ptr())
proc.go#L2459: _g_.m.nextp = 0
proc.go#L2469: if mp == _g_.m {
proc.go#L2491: if _g_.m.spinning {
proc.go#L2492: _g_.m.spinning = false
proc.go#L2524: _g_.m.curg = gp
proc.go#L2525: gp.m = _g_.m
proc.go#L2531: _g_.m.p.ptr().schedtick++
proc.go#L2536: if _g_.m.profilehz != hz {
proc.go#L2562: _p_ := _g_.m.p.ptr()
proc.go#L2622: if !_g_.m.spinning && 2*atomic.Load(&sched.nmspinning) >= procs-atomic.Load(&sched.npidle) {
proc.go#L2625: if !_g_.m.spinning {
proc.go#L2626: _g_.m.spinning = true
proc.go#L2770: wasSpinning := _g_.m.spinning
proc.go#L2771: if _g_.m.spinning {
proc.go#L2772: _g_.m.spinning = false
proc.go#L2787: _g_.m.spinning = true
proc.go#L2851: _g_.m.spinning = true
proc.go#L2869: if _g_.m.p != 0 {
proc.go#L2872: if _g_.m.spinning {
proc.go#L2905: _g_.m.spinning = true
proc.go#L2928: p := getg().m.p.ptr()
proc.go#L2965: if !_g_.m.spinning {
proc.go#L2968: _g_.m.spinning = false
proc.go#L3020: pp := getg().m.p.ptr()
proc.go#L3054: if _g_.m.locks != 0 {
proc.go#L3058: if _g_.m.lockedg != 0 {
proc.go#L3060: execute(_g_.m.lockedg.ptr(), false) // Never returns.
proc.go#L3065: if _g_.m.incgo {
proc.go#L3070: pp := _g_.m.p.ptr()
proc.go#L3084: if _g_.m.spinning && (pp.runnext != 0 || pp.runqhead != pp.runqtail) {
proc.go#L3106: gp = gcController.findRunnableGCWorker(_g_.m.p.ptr())
proc.go#L3113: if _g_.m.p.ptr().schedtick%61 == 0 && sched.runqsize > 0 {
proc.go#L3115: gp = globrunqget(_g_.m.p.ptr(), 1)
proc.go#L3120: gp, inheritTime = runqget(_g_.m.p.ptr())
proc.go#L3131: if _g_.m.spinning {
proc.go#L3177: setMNoWB(&_g_.m.curg.m, nil)
proc.go#L3178: setGNoWB(&_g_.m.curg, nil)
proc.go#L3212: if pp != getg().m.p.ptr() || int(atomic.Load(&pp.deletedTimers)) <= int(atomic.Load(&pp.numTimers)/4) {
proc.go#L3237: if pp == getg().m.p.ptr() && int(atomic.Load(&pp.deletedTimers)) > len(pp.timers)/4 {
proc.go#L3256: traceGoPark(_g_.m.waittraceev, _g_.m.waittraceskip)
proc.go#L3262: if fn := _g_.m.waitunlockf; fn != nil {
proc.go#L3263: ok := fn(gp, _g_.m.waitlock)
proc.go#L3264: _g_.m.waitunlockf = nil
proc.go#L3265: _g_.m.waitlock = nil
proc.go#L3303: if !canPreemptM(gp.m) {
proc.go#L3357: pp := gp.m.p.ptr()
proc.go#L3383: gp.m = nil
proc.go#L3386: _g_.m.lockedg = 0
proc.go#L3410: gfput(_g_.m.p.ptr(), gp)
proc.go#L3414: if _g_.m.lockedInt != 0 {
proc.go#L3415: print("invalid m->lockedInt = ", _g_.m.lockedInt, "\n")
proc.go#L3418: gfput(_g_.m.p.ptr(), gp)
proc.go#L3427: gogo(&_g_.m.g0.sched)
proc.go#L3431: _g_.m.lockedExt = 0
proc.go#L3503: _g_.m.locks++
proc.go#L3537: if _g_.m.p.ptr().runSafePointFn != 0 {
proc.go#L3543: _g_.m.syscalltick = _g_.m.p.ptr().syscalltick
proc.go#L3545: pp := _g_.m.p.ptr()
proc.go#L3547: _g_.m.oldp.set(pp)
proc.go#L3548: _g_.m.p = 0
proc.go#L3555: _g_.m.locks--
proc.go#L3579: _p_ := _g_.m.oldp.ptr()
proc.go#L3600: _g_.m.locks++ // see comment in entersyscall
proc.go#L3603: _g_.m.syscalltick = _g_.m.p.ptr().syscalltick
proc.go#L3605: _g_.m.p.ptr().syscalltick++
proc.go#L3635: _g_.m.locks--
proc.go#L3641: traceGoSysBlock(getg().m.p.ptr())
proc.go#L3661: _g_.m.locks++ // see comment in entersyscall
proc.go#L3667: oldp := _g_.m.oldp.ptr()
proc.go#L3668: _g_.m.oldp = 0
proc.go#L3671: if oldp != _g_.m.p.ptr() || _g_.m.syscalltick != _g_.m.p.ptr().syscalltick {
proc.go#L3676: _g_.m.p.ptr().syscalltick++
proc.go#L3683: _g_.m.locks--
proc.go#L3705: for oldp != nil && oldp.syscalltick == _g_.m.syscalltick {
proc.go#L3715: _g_.m.locks--
proc.go#L3727: _g_.m.p.ptr().syscalltick++
proc.go#L3757: for oldp.syscalltick == _g_.m.syscalltick {
proc.go#L3778: if _g_.m.syscalltick != _g_.m.p.ptr().syscalltick {
proc.go#L3785: traceGoSysBlock(_g_.m.p.ptr())
proc.go#L3790: _g_.m.p.ptr().syscalltick++
proc.go#L3834: if _g_.m.lockedg != 0 {
proc.go#L3844: gp := getg().m.curg
proc.go#L3849: gp.m.locks++
proc.go#L3850: sigsave(&gp.m.sigmask)
proc.go#L3868: gp := getg().m.curg
proc.go#L3873: msigrestore(gp.m.sigmask)
proc.go#L3875: gp.m.locks--
proc.go#L3911: msigrestore(getg().m.sigmask)
proc.go#L3981: _p_ := getg().m.p.ptr()
proc.go#L4003: _g_.m.throwing = -1 // do not dump full stacks
proc.go#L4018: _p_ := _g_.m.p.ptr()
proc.go#L4051: if writeBarrier.needed && !_g_.m.curg.gcscandone {
proc.go#L4071: if _g_.m.curg != nil {
proc.go#L4072: newg.labels = _g_.m.curg.labels
proc.go#L4095: releasem(_g_.m)
proc.go#L4244: _g_.m.lockedg.set(_g_)
proc.go#L4245: _g_.lockedm.set(_g_.m)
proc.go#L4272: _g_.m.lockedExt++
proc.go#L4273: if _g_.m.lockedExt == 0 {
proc.go#L4274: _g_.m.lockedExt--
proc.go#L4282: getg().m.lockedInt++
proc.go#L4295: if _g_.m.lockedInt != 0 || _g_.m.lockedExt != 0 {
proc.go#L4298: _g_.m.lockedg = 0
proc.go#L4318: if _g_.m.lockedExt == 0 {
proc.go#L4321: _g_.m.lockedExt--
proc.go#L4328: if _g_.m.lockedInt == 0 {
proc.go#L4331: _g_.m.lockedInt--
proc.go#L4405: getg().m.mallocing++
proc.go#L4535: getg().m.mallocing--
proc.go#L4612: _g_.m.locks++
proc.go#L4636: _g_.m.locks--
proc.go#L4700: plocal := getg().m.p.ptr()
proc.go#L4752: mp := getg().m
proc.go#L4839: if _g_.m.p != 0 && _g_.m.p.ptr().id < nprocs {
proc.go#L4841: _g_.m.p.ptr().status = _Prunning
proc.go#L4842: _g_.m.p.ptr().mcache.prepareForSweep()
proc.go#L4849: if _g_.m.p != 0 {
proc.go#L4855: traceProcStop(_g_.m.p.ptr())
proc.go#L4857: _g_.m.p.ptr().m = 0
proc.go#L4859: _g_.m.p = 0
proc.go#L4891: if _g_.m.p.ptr() == p {
proc.go#L4939: if _g_.m.p != 0 {
proc.go#L4950: _g_.m.p.set(_p_)
proc.go#L4951: _p_.m.set(_g_.m)
proc.go#L4959: if _g_.m.p == 0 {
proc.go#L4962: _p_ := _g_.m.p.ptr()
proc.go#L4963: if _p_.m.ptr() != _g_.m || _p_.status != _Prunning {
proc.go#L4964: print("releasep: m=", _g_.m, " m->p=", _g_.m.p.ptr(), " p->m=", hex(_p_.m), " p->status=", _p_.status, "\n")
proc.go#L4968: traceProcStop(_g_.m.p.ptr())
proc.go#L4970: _g_.m.p = 0
proc.go#L5084: getg().m.throwing = -1 // do not dump full stacks
proc.go#L5362: if mp == nil || mp == getg().m {
proc.go#L5454: mp := gp.m
proc.go#L6092: mp := _g_.m
proc.go#L6101: _g_.m.locks--
proc.go#L6140: if p := getg().m.p.ptr(); !runqempty(p) {
runtime1.go#L41: all = _g_.m.throwing > 0 || t&tracebackAll != 0
runtime1.go#L42: if _g_.m.traceback != 0 {
runtime1.go#L43: level = int32(_g_.m.traceback)
runtime1.go#L469: _g_.m.locks++
runtime1.go#L470: return _g_.m
runtime2.go#L418: m *m // current m; offset known to arm liblink
rwmutex.go#L50: m := getg().m
rwmutex.go#L78: releasem(getg().m)
rwmutex.go#L85: m := getg().m
sema.go#L100: if gp != gp.m.curg {
sema.go#L195: if s.ticket == 1 && getg().m.locks == 0 {
signal_unix.go#L314: getg().m.profilehz = hz
signal_unix.go#L336: atomic.Xadd(&gp.m.preemptGen, 1)
signal_unix.go#L337: atomic.Store(&gp.m.signalPending, 0)
signal_unix.go#L445: setg(g.m.gsignal)
signal_unix.go#L449: setStack := adjustSignalStack(sig, g.m, &gsignalStack)
signal_unix.go#L451: g.m.gsignal.stktopsp = getcallersp()
signal_unix.go#L541: sigprof(c.sigpc(), c.sigsp(), c.siglr(), gp, _g_.m)
signal_unix.go#L615: _g_.m.throwing = 1
signal_unix.go#L616: _g_.m.caughtsig.set(gp)
signal_unix.go#L628: print("PC=", hex(c.sigpc()), " m=", _g_.m.id, " sigcode=", c.sigcode(), "\n")
signal_unix.go#L629: if _g_.m.lockedg != 0 && _g_.m.ncgo > 0 && gp == _g_.m.g0 {
signal_unix.go#L631: gp = _g_.m.lockedg.ptr()
signal_unix.go#L663: if crashing > 0 && gp != _g_.m.curg && _g_.m.curg != nil && readgstatus(_g_.m.curg)&^_Gscan == _Grunning {
signal_unix.go#L665: goroutineheader(_g_.m.curg)
signal_unix.go#L666: traceback(^uintptr(0), ^uintptr(0), 0, _g_.m.curg)
signal_unix.go#L1015: if g != nil && g.m != nil && g.m.curg != nil && !g.m.incgo {
signal_unix.go#L1106: signalstack(&_g_.m.gsignal.stack)
signal_unix.go#L1107: _g_.m.newSigstack = true
signal_unix.go#L1109: setGsignalStack(&st, &_g_.m.goSigStack)
signal_unix.go#L1110: _g_.m.newSigstack = false
signal_unix.go#L1123: nmask := getg().m.sigmask
signal_unix.go#L1136: if getg().m.newSigstack {
signal_unix.go#L1146: restoreGsignalStack(&getg().m.goSigStack)
signal_unix.go#L1188: old.stack = g.m.gsignal.stack
signal_unix.go#L1189: old.stackguard0 = g.m.gsignal.stackguard0
signal_unix.go#L1190: old.stackguard1 = g.m.gsignal.stackguard1
signal_unix.go#L1191: old.stktopsp = g.m.gsignal.stktopsp
signal_unix.go#L1194: g.m.gsignal.stack.lo = stsp
signal_unix.go#L1195: g.m.gsignal.stack.hi = stsp + st.ss_size
signal_unix.go#L1196: g.m.gsignal.stackguard0 = stsp + _StackGuard
signal_unix.go#L1197: g.m.gsignal.stackguard1 = stsp + _StackGuard
signal_unix.go#L1205: gp := getg().m.gsignal
stack.go#L332: if thisg != thisg.m.g0 {
stack.go#L363: if stackNoCache != 0 || thisg.m.p == 0 || thisg.m.preemptoff != "" {
stack.go#L372: c := thisg.m.p.ptr().mcache
stack.go#L460: if stackNoCache != 0 || gp.m.p == 0 || gp.m.preemptoff != "" {
stack.go#L465: c := gp.m.p.ptr().mcache
stack.go#L605: getg().m.traceback = 2
stack.go#L941: if thisg.m.morebuf.g.ptr().stackguard0 == stackFork {
stack.go#L944: if thisg.m.morebuf.g.ptr() != thisg.m.curg {
stack.go#L945: print("runtime: newstack called from g=", hex(thisg.m.morebuf.g), "\n"+"\tm=", thisg.m, " m->curg=", thisg.m.curg, " m->g0=", thisg.m.g0, " m->gsignal=", thisg.m.gsignal, "\n")
stack.go#L946: morebuf := thisg.m.morebuf
stack.go#L951: gp := thisg.m.curg
stack.go#L953: if thisg.m.curg.throwsplit {
stack.go#L955: morebuf := thisg.m.morebuf
stack.go#L969: thisg.m.traceback = 2 // Include runtime frames
stack.go#L974: morebuf := thisg.m.morebuf
stack.go#L975: thisg.m.morebuf.pc = 0
stack.go#L976: thisg.m.morebuf.lr = 0
stack.go#L977: thisg.m.morebuf.sp = 0
stack.go#L978: thisg.m.morebuf.g = 0
stack.go#L998: if !canPreemptM(thisg.m) {
stack.go#L1026: if gp == thisg.m.g0 {
stack.go#L1029: if thisg.m.p == 0 && thisg.m.locks == 0 {
stack.go#L1134: if !(gp == getg().m.curg && getg() != getg().m.curg && s == _Grunning) {
stack.go#L1145: if gp == getg().m.curg && gp.m.libcallsp != 0 {
stubs.go#L118: mp := getg().m
sys_libc.go#L21: mp = gp.m
time.go#L269: pp := getg().m.p.ptr()
time.go#L489: pp := getg().m.p.ptr()
time.go#L857: ppcur := getg().m.p.ptr()
time.go#L894: gp.racectx = gp.m.p.ptr().timerRaceCtx
trace.go#L216: _g_.m.startingtrace = true
trace.go#L228: gp.tracelastp = getg().m.p
trace.go#L263: _g_.m.startingtrace = false
trace.go#L626: releasem(getg().m)
trace.go#L632: dolock := owner == nil || owner != getg().m.curg
trace.go#L976: traceEvent(traceEvProcStart, -1, uint64(getg().m.id))
trace.go#L1015: _p_ := getg().m.p.ptr()
trace.go#L1027: _p_ := getg().m.p.ptr()
trace.go#L1037: _p_ := getg().m.p.ptr()
trace.go#L1057: newg.tracelastp = getg().m.p
trace.go#L1064: _g_ := getg().m.curg
trace.go#L1065: _p_ := _g_.m.p
trace.go#L1083: _g_.tracelastp = _g_.m.p
trace.go#L1089: _g_.tracelastp = _g_.m.p
trace.go#L1101: _p_ := getg().m.p
trace.go#L1128: _g_ := getg().m.curg
trace.go#L1130: _g_.tracelastp = _g_.m.p
traceback.go#L92: if ourg := getg(); ourg == gp && ourg == ourg.m.curg {
traceback.go#L188: if flags&_TraceJumpStack != 0 && gp == gp.m.g0 && gp.m.curg != nil {
traceback.go#L196: frame.pc = gp.m.curg.sched.pc
traceback.go#L199: frame.sp = gp.m.curg.sched.sp
traceback.go#L200: cgoCtxt = gp.m.curg.cgoCtxt
traceback.go#L204: frame.sp = gp.m.curg.sched.sp
traceback.go#L205: cgoCtxt = gp.m.curg.cgoCtxt
traceback.go#L215: if topofstack(f, gp.m != nil && gp == gp.m.g0) {
traceback.go#L249: if doPrint && gp.m.incgo && f.funcID == funcID_sigpanic {
traceback.go#L451: if gp.m != nil && gp.m.throwing > 0 && gp == gp.m.curg || level >= 2 {
traceback.go#L698: if gp.m.libcallsp != 0 {
traceback.go#L700: traceback1(gp.m.libcallpc, gp.m.libcallsp, 0, gp.m.libcallg.ptr(), 0)
traceback.go#L708: if iscgo && gp.m != nil && gp.m.ncgo > 0 && gp.syscallsp != 0 && gp.m.cgoCallers != nil && gp.m.cgoCallers[0] != 0 {
traceback.go#L715: atomic.Store(&gp.m.cgoCallersUse, 1)
traceback.go#L716: cgoCallers := *gp.m.cgoCallers
traceback.go#L717: gp.m.cgoCallers[0] = 0
traceback.go#L718: atomic.Store(&gp.m.cgoCallersUse, 0)
traceback.go#L813: if g.m.throwing > 0 && gp != nil && (gp == g.m.curg || gp == g.m.caughtsig.ptr()) {
traceback.go#L920: curgp := getg().m.curg
traceback.go#L947: if gp.m != getg().m && readgstatus(gp)&^_Gscan == _Grunning {
traceback.go#L1315: if panicking > 0 || getg().m.curg != getg() {
traceback.go#L1332: if panicking > 0 || getg().m.curg != getg() {
 |
The pages are generated with Golds v0.3.2-preview. (GOOS=darwin GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu.
PR and bug reports are welcome and can be submitted to the issue list.
Please follow @Go100and1 (reachable from the left QR code) to get the latest news of Golds. |