- Sort Score
- Result 10 results
- Languages All
Results 11 - 20 of 119 for Getg (0.04 sec)
-
src/runtime/export_debug_test.go
// a signal handler. Add the go:nowritebarrierrec annotation and restructure // this to avoid write barriers. switch h.gp.atomicstatus.Load() { case _Grunning: if getg().m != h.mp { println("trap on wrong M", getg().m, h.mp) return false } // Save the signal context h.saveSigContext(ctxt) // Set PC to debugCallV2. ctxt.setsigpc(uint64(abi.FuncPCABIInternal(debugCallV2)))
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 5.1K bytes - Viewed (0) -
src/runtime/os_aix.go
// This will return a pointer to errno. func miniterrno() { mp := getg().m r, _ := syscall0(&libc__Errno) mp.perrno = r } func minit() { miniterrno() minitSignals() getg().m.procid = uint64(pthread_self()) } func unminit() { unminitSignals() getg().m.procid = 0 } // Called from exitm, but not from drop, to undo the effect of thread-owned
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 8.9K bytes - Viewed (0) -
src/runtime/mwbbuf.go
if getg().m.dying > 0 { // We're going down. Not much point in write barriers // and this way we can allow write barriers in the // panic path. getg().m.p.ptr().wbBuf.discard() return } // Switch to the system stack so we don't have to worry about // safe points. systemstack(func() { wbBufFlush1(getg().m.p.ptr()) }) }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 8.1K bytes - Viewed (0) -
src/runtime/signal_windows.go
callbackLastVCH ) // sigFetchGSafe is like getg() but without panicking // when TLS is not set. // Only implemented on windows/386, which is the only // arch that loads TLS when calling getg(). Others // use a dedicated register. func sigFetchGSafe() *g func sigFetchG() *g { if GOARCH == "386" { return sigFetchGSafe() } return getg() }
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Tue Oct 17 20:32:29 UTC 2023 - 14.5K bytes - Viewed (0) -
src/runtime/os_wasm.go
"unsafe" ) func osinit() { // https://webassembly.github.io/spec/core/exec/runtime.html#memory-instances physPageSize = 64 * 1024 initBloc() ncpu = 1 getg().m.procid = 2 } const _SIGSEGV = 0xb func sigpanic() { gp := getg() if !canpanic() { throw("unexpected signal during runtime execution") } // js only invokes the exception handler for memory faults. gp.sig = _SIGSEGV panicmem()
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Mar 25 19:53:03 UTC 2024 - 3.2K bytes - Viewed (0) -
src/runtime/export_test.go
} return } func GetNextArenaHint() uintptr { return mheap_.arenaHints.addr } type G = g type Sudog = sudog func Getg() *G { return getg() } func Goid() uint64 { return getg().goid } func GIsWaitingOnMutex(gp *G) bool { return readgstatus(gp) == _Gwaiting && gp.waitreason.isMutexWait() } var CasGStatusAlwaysTrack = &casgstatusAlwaysTrack
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Thu May 30 17:50:53 UTC 2024 - 46.1K bytes - Viewed (0) -
src/runtime/lockrank_off.go
} func unlockWithRank(l *mutex) { unlock2(l) } // This function may be called in nosplit context and thus must be nosplit. // //go:nosplit func releaseLockRankAndM(rank lockRank) { releasem(getg().m) } func lockWithRankMayAcquire(l *mutex, rank lockRank) { } //go:nosplit func assertLockHeld(l *mutex) { } //go:nosplit func assertRankHeld(r lockRank) { } //go:nosplit
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Mon Apr 22 14:29:04 UTC 2024 - 1.2K bytes - Viewed (0) -
src/runtime/os_plan9.go
var buf [_ERRMAX]byte if !atomic.Cas(&exiting, 0, 1) { return } getg().m.locks++ n := copy(buf[:], goexits) n = copy(buf[n:], gostringnocopy(status)) pid := getpid() for mp := (*m)(atomic.Loadp(unsafe.Pointer(&allm))); mp != nil; mp = mp.alllink { if mp.procid != 0 && mp.procid != pid { postnote(mp.procid, buf[:]) } } getg().m.locks-- } var procdir = []byte("/proc/")
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 17 15:41:45 UTC 2024 - 10.3K bytes - Viewed (0) -
src/runtime/rand.go
// //go:nosplit //go:linkname rand func rand() uint64 { // Note: We avoid acquirem here so that in the fast path // there is just a getg, an inlined c.Next, and a return. // The performance difference on a 16-core AMD is // 3.7ns/call this way versus 4.3ns/call with acquirem (+16%). mp := getg().m c := &mp.chacha8 for { // Note: c.Next is marked nosplit, // so we don't need to use mp.locks
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri May 31 14:32:47 UTC 2024 - 8K bytes - Viewed (0) -
src/runtime/coro.go
// and then calls coroexit to remove the extra concurrency. func corostart() { gp := getg() c := gp.coroarg gp.coroarg = nil defer coroexit(c) c.f(c) } // coroexit is like coroswitch but closes the coro // and exits the current goroutine func coroexit(c *coro) { gp := getg() gp.coroarg = c gp.coroexit = true mcall(coroswitch_m) } //go:linkname coroswitch
Registered: Wed Jun 12 16:32:35 UTC 2024 - Last Modified: Fri Jun 07 19:09:18 UTC 2024 - 7.4K bytes - Viewed (0)