Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 74 for systemstack (0.13 sec)

  1. src/runtime/cgocheck.go

    	// Do this check last because it is more expensive and rarely true.
    	// If it is false the expense doesn't matter since we are crashing.
    	if inPersistentAlloc(uintptr(unsafe.Pointer(dst))) {
    		return
    	}
    
    	systemstack(func() {
    		println("write of unpinned Go pointer", hex(uintptr(src)), "to non-Go memory", hex(uintptr(unsafe.Pointer(dst))))
    		throw(cgoWriteBarrierFail)
    	})
    }
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Apr 09 04:07:57 UTC 2024
    - 7.6K bytes
    - Viewed (0)
  2. src/runtime/mgcwork.go

    // It's important that any use of gcWork during the mark phase prevent
    // the garbage collector from transitioning to mark termination since
    // gcWork may locally hold GC work buffers. This can be done by
    // disabling preemption (systemstack or acquirem).
    type gcWork struct {
    	// wbuf1 and wbuf2 are the primary and secondary work buffers.
    	//
    	// This can be thought of as a stack of both work buffers'
    	// pointers concatenated. When we pop the last pointer, we
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 12.9K bytes
    - Viewed (0)
  3. src/runtime/tracetime.go

    	w, _ = w.ensure(1 + traceBytesPerNumber /* traceEvFrequency + frequency */)
    
    	// Write out the string.
    	w.byte(byte(traceEvFrequency))
    	w.varint(traceClockUnitsPerSecond())
    
    	// Immediately flush the buffer.
    	systemstack(func() {
    		lock(&trace.lock)
    		traceBufFlush(w.traceBuf, gen)
    		unlock(&trace.lock)
    	})
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 3.3K bytes
    - Viewed (0)
  4. src/runtime/stack_test.go

    	}
    }
    
    func TestTracebackSystemstack(t *testing.T) {
    	if GOARCH == "ppc64" || GOARCH == "ppc64le" {
    		t.Skip("systemstack tail call not implemented on ppc64x")
    	}
    
    	// Test that profiles correctly jump over systemstack,
    	// including nested systemstack calls.
    	pcs := make([]uintptr, 20)
    	pcs = pcs[:TracebackSystemstack(pcs, 5)]
    	// Check that runtime.TracebackSystemstack appears five times
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Jun 14 00:03:57 UTC 2023
    - 23.1K bytes
    - Viewed (0)
  5. src/runtime/proc.go

    		// systemstack which clobbers g.sched.
    		save(pc, sp, bp)
    	}
    	if gp.syscallsp < gp.stack.lo || gp.stack.hi < gp.syscallsp {
    		systemstack(func() {
    			print("entersyscall inconsistent ", hex(gp.syscallsp), " [", hex(gp.stack.lo), ",", hex(gp.stack.hi), "]\n")
    			throw("entersyscall")
    		})
    	}
    
    	if trace.ok() {
    		systemstack(func() {
    			trace.GoSysCall()
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 207.5K bytes
    - Viewed (0)
  6. src/runtime/asm_wasm.s

    	// switch to g0
    	MOVD R2, g
    
    	// call fn
    	Get CTXT
    	I32WrapI64
    	I64Load $0
    	CALL
    
    	Get SP
    	I32Const $8
    	I32Add
    	Set SP
    
    	JMP runtime·badmcall2(SB)
    
    // func systemstack(fn func())
    TEXT runtime·systemstack(SB), NOSPLIT, $0-8
    	// R0 = fn
    	MOVD fn+0(FP), R0
    	// R1 = g.m
    	MOVD g_m(g), R1
    	// R2 = g0
    	MOVD m_g0(R1), R2
    
    	// if g == g0
    	Get g
    	Get R2
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 20 21:26:51 UTC 2023
    - 11.8K bytes
    - Viewed (0)
  7. src/runtime/mcache.go

    	size uintptr   // total size of stacks in list
    }
    
    // dummy mspan that contains no free objects.
    var emptymspan mspan
    
    func allocmcache() *mcache {
    	var c *mcache
    	systemstack(func() {
    		lock(&mheap_.lock)
    		c = (*mcache)(mheap_.cachealloc.alloc())
    		c.flushGen.Store(mheap_.sweepgen)
    		unlock(&mheap_.lock)
    	})
    	for i := range c.alloc {
    		c.alloc[i] = &emptymspan
    	}
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 10K bytes
    - Viewed (0)
  8. src/runtime/asm_mips64x.s

    	MOVV	(g_sched+gobuf_sp)(g), R29	// sp = m->g0->sched.sp
    	ADDV	$-16, R29
    	MOVV	R1, 8(R29)
    	MOVV	R0, 0(R29)
    	JAL	(R4)
    	JMP	runtime·badmcall2(SB)
    
    // systemstack_switch is a dummy routine that systemstack leaves at the bottom
    // of the G stack. We need to distinguish the routine that
    // lives at the bottom of the G stack from the one that lives
    // at the top of the system stack because the one at the top of
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Nov 06 19:45:59 UTC 2023
    - 24.3K bytes
    - Viewed (0)
  9. src/runtime/trace.go

    		// If the status was traced, nothing else to do.
    		if gp.trace.statusWasTraced(gen) {
    			return
    		}
    		// Scribble down information about this goroutine.
    		ug := untracedG{gp: gp, mid: -1}
    		systemstack(func() {
    			me := getg().m.curg
    			// We don't have to handle this G status transition because we
    			// already eliminated ourselves from consideration above.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 37.1K bytes
    - Viewed (0)
  10. src/runtime/asm_riscv64.s

    	// RDCYCLE reads counter that is per HART(core) based
    	// according to the riscv manual, see issue 46737
    	RDTIME	A0
    	MOV	A0, ret+0(FP)
    	RET
    
    // systemstack_switch is a dummy routine that systemstack leaves at the bottom
    // of the G stack. We need to distinguish the routine that
    // lives at the bottom of the G stack from the one that lives
    // at the top of the system stack because the one at the top of
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Nov 09 13:57:06 UTC 2023
    - 27K bytes
    - Viewed (0)
Back to top