Search Options

Results per page
Sort
Preferred Languages
Advance

Results 1 - 10 of 10 for _Gcopystack (0.18 sec)

  1. src/runtime/tracestatus.go

    	// N.B. Ignore the _Gscan bit. We don't model it in the tracer.
    	var tgs traceGoStatus
    	switch status &^ _Gscan {
    	case _Grunnable:
    		tgs = traceGoRunnable
    	case _Grunning, _Gcopystack:
    		tgs = traceGoRunning
    	case _Gsyscall:
    		tgs = traceGoSyscall
    	case _Gwaiting, _Gpreempted:
    		// There are a number of cases where a G might end up in
    		// _Gwaiting but it's actually running in a non-preemptive
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Apr 15 17:03:35 UTC 2024
    - 7.2K bytes
    - Viewed (0)
  2. src/runtime/runtime-gdb.py

    G_MORIBUND_UNUSED = read_runtime_const("'runtime._Gmoribund_unused'", 5)
    G_DEAD = read_runtime_const("'runtime._Gdead'", 6)
    G_ENQUEUE_UNUSED = read_runtime_const("'runtime._Genqueue_unused'", 7)
    G_COPYSTACK = read_runtime_const("'runtime._Gcopystack'", 8)
    G_SCAN = read_runtime_const("'runtime._Gscan'", 0x1000)
    G_SCANRUNNABLE = G_SCAN+G_RUNNABLE
    G_SCANRUNNING = G_SCAN+G_RUNNING
    G_SCANSYSCALL = G_SCAN+G_SYSCALL
    G_SCANWAITING = G_SCAN+G_WAITING
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 10 12:59:20 UTC 2023
    - 15.4K bytes
    - Viewed (0)
  3. src/runtime/runtime2.go

    	// list.
    	_Gdead // 6
    
    	// _Genqueue_unused is currently unused.
    	_Genqueue_unused // 7
    
    	// _Gcopystack means this goroutine's stack is being moved. It
    	// is not executing user code and is not on a run queue. The
    	// stack is owned by the goroutine that put it in _Gcopystack.
    	_Gcopystack // 8
    
    	// _Gpreempted means this goroutine stopped itself for a
    	// suspendG preemption. It is like _Gwaiting, but nothing is
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:57:37 UTC 2024
    - 47.9K bytes
    - Viewed (0)
  4. src/runtime/preempt.go

    			//
    			// preemptStop may need to be cleared, but
    			// doing that here could race with goroutine
    			// reuse. Instead, goexit0 clears it.
    			return suspendGState{dead: true}
    
    		case _Gcopystack:
    			// The stack is being copied. We need to wait
    			// until this is done.
    
    		case _Gpreempted:
    			// We (or someone else) suspended the G. Claim
    			// ownership of it by transitioning it to
    			// _Gwaiting.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri May 17 15:41:45 UTC 2024
    - 15.1K bytes
    - Viewed (0)
  5. src/runtime/stack.go

    	// so it must be Grunning (or Gscanrunning).
    	casgstatus(gp, _Grunning, _Gcopystack)
    
    	// The concurrent GC will not scan the stack while we are doing the copy since
    	// the gp is in a Gcopystack status.
    	copystack(gp, newsize)
    	if stackDebug >= 1 {
    		print("stack grow done\n")
    	}
    	casgstatus(gp, _Gcopystack, _Grunning)
    	gogo(&gp.sched)
    }
    
    //go:nosplit
    func nilfunc() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 22:31:00 UTC 2024
    - 41.1K bytes
    - Viewed (0)
  6. src/runtime/traceback.go

    }
    
    var gStatusStrings = [...]string{
    	_Gidle:      "idle",
    	_Grunnable:  "runnable",
    	_Grunning:   "running",
    	_Gsyscall:   "syscall",
    	_Gwaiting:   "waiting",
    	_Gdead:      "dead",
    	_Gcopystack: "copystack",
    	_Gpreempted: "preempted",
    }
    
    func goroutineheader(gp *g) {
    	level, _, _ := gotraceback()
    
    	gpstatus := readgstatus(gp)
    
    	isScan := gpstatus&_Gscan != 0
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 16:25:21 UTC 2024
    - 55.1K bytes
    - Viewed (0)
  7. src/runtime/proc.go

    //go:nosplit
    func casgcopystack(gp *g) uint32 {
    	for {
    		oldstatus := readgstatus(gp) &^ _Gscan
    		if oldstatus != _Gwaiting && oldstatus != _Grunnable {
    			throw("copystack: bad status, not Gwaiting or Grunnable")
    		}
    		if gp.atomicstatus.CompareAndSwap(oldstatus, _Gcopystack) {
    			return oldstatus
    		}
    	}
    }
    
    // casGToPreemptScan transitions gp from _Grunning to _Gscan|_Gpreempted.
    //
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 207.5K bytes
    - Viewed (0)
  8. src/runtime/chan.go

    	gp := getg()
    	mysg := acquireSudog()
    	mysg.releasetime = 0
    	if t0 != 0 {
    		mysg.releasetime = -1
    	}
    	// No stack splits between assigning elem and enqueuing mysg
    	// on gp.waiting where copystack can find it.
    	mysg.elem = ep
    	mysg.waitlink = nil
    	mysg.g = gp
    	mysg.isSelect = false
    	mysg.c = c
    	gp.waiting = mysg
    	gp.param = nil
    	c.sendq.enqueue(mysg)
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 23 01:16:50 UTC 2024
    - 25.9K bytes
    - Viewed (0)
  9. src/runtime/select.go

    		casi = int(casei)
    		cas = &scases[casi]
    		c = cas.c
    		sg := acquireSudog()
    		sg.g = gp
    		sg.isSelect = true
    		// No stack splits between assigning elem and enqueuing
    		// sg on gp.waiting where copystack can find it.
    		sg.elem = cas.elem
    		sg.releasetime = 0
    		if t0 != 0 {
    			sg.releasetime = -1
    		}
    		sg.c = c
    		// Construct waiting list in lock order.
    		*nextp = sg
    		nextp = &sg.waitlink
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Mar 13 21:36:04 UTC 2024
    - 15K bytes
    - Viewed (0)
  10. src/runtime/mgcmark.go

    		scanframeworker(&u.frame, &state, gcw)
    	}
    
    	// Find additional pointers that point into the stack from the heap.
    	// Currently this includes defers and panics. See also function copystack.
    
    	// Find and trace other pointers in defer records.
    	for d := gp._defer; d != nil; d = d.link {
    		if d.fn != nil {
    			// Scan the func value, which could be a stack allocated closure.
    			// See issue 30453.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu Apr 18 21:25:11 UTC 2024
    - 52.5K bytes
    - Viewed (0)
Back to top