Search Options

Results per page
Sort
Preferred Languages
Advance

Results 21 - 30 of 39 for Preemptable (0.32 sec)

  1. src/runtime/HACKING.md

    `systemstack`, `mcall`, or `asmcgocall` to perform tasks that must not
    be preempted, that must not grow the user stack, or that switch user
    goroutines. Code running on the system stack is implicitly
    non-preemptible and the garbage collector does not scan system stacks.
    While running on the system stack, the current user stack is not used
    for execution.
    
    nosplit functions
    -----------------
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Mon Mar 25 19:53:03 UTC 2024
    - 13.9K bytes
    - Viewed (0)
  2. src/cmd/internal/obj/ppc64/obj9.go

    					// during the execution of the function prologue, the traceback
    					// code will not see a half-updated stack frame.
    					// This sequence is not async preemptible, as if we open a frame
    					// at the current SP, it will clobber the saved LR.
    					q = obj.Appendp(q, c.newprog)
    					q.As = AMOVD
    					q.Pos = p.Pos
    					q.From.Type = obj.TYPE_REG
    					q.From.Reg = REG_LR
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 18:17:17 UTC 2024
    - 40.8K bytes
    - Viewed (0)
  3. src/cmd/internal/obj/loong64/obj.go

    				// Store link register before decrement SP, so if a signal comes
    				// during the execution of the function prologue, the traceback
    				// code will not see a half-updated stack frame.
    				// This sequence is not async preemptible, as if we open a frame
    				// at the current SP, it will clobber the saved LR.
    				q = c.ctxt.StartUnsafePoint(q, c.newprog)
    
    				q = obj.Appendp(q, newprog)
    				q.As = mov
    				q.Pos = p.Pos
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Tue Nov 21 19:22:18 UTC 2023
    - 19.7K bytes
    - Viewed (0)
  4. src/runtime/malloc.go

    // weight allocation. If it is a heavy weight allocation the caller must
    // determine whether a new GC cycle needs to be started or if the GC is active
    // whether this goroutine needs to assist the GC.
    //
    // Must run in a non-preemptible context since otherwise the owner of
    // c could change.
    func (c *mcache) nextFree(spc spanClass) (v gclinkptr, s *mspan, shouldhelpgc bool) {
    	s = c.alloc[spc]
    	shouldhelpgc = false
    	freeIndex := s.nextFreeIndex()
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 29 17:58:53 UTC 2024
    - 59.6K bytes
    - Viewed (0)
  5. src/runtime/trace.go

    	// hits a traceAcquire, it sees that the trace is enabled.
    	//
    	// Note also that stopping the world is necessary to make sure sweep-related events are
    	// coherent. Since the world is stopped and sweeps are non-preemptible, we can never start
    	// the world and see an unpaired sweep 'end' event. Other parts of the tracer rely on this.
    	stw := stopTheWorld(stwStartTrace)
    
    	// Prevent sysmon from running any code that could generate events.
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 22 21:17:41 UTC 2024
    - 37.1K bytes
    - Viewed (0)
  6. src/runtime/gc_test.go

    			n := stack[tos]
    			if n.l == nil {
    				tos--
    			} else {
    				n.l, n.r = n.r, n.l
    				stack[tos] = n.l
    				stack[tos+1] = n.r
    				tos++
    			}
    
    			if i%(1<<12) == 0 {
    				// Avoid non-preemptible loops (see issue #10958).
    				runtime.Gosched()
    			}
    		}
    	})
    
    	runtime.KeepAlive(wbRoots)
    }
    
    func BenchmarkBulkWriteBarrier(b *testing.B) {
    	if runtime.GOMAXPROCS(-1) < 2 {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed Jun 05 22:33:52 UTC 2024
    - 17.6K bytes
    - Viewed (0)
  7. src/runtime/extern.go

    	execution tracer to double-check stack ownership before taking a stack trace.
    
    	asyncpreemptoff: asyncpreemptoff=1 disables signal-based
    	asynchronous goroutine preemption. This makes some loops
    	non-preemptible for long periods, which may delay GC and
    	goroutine scheduling. This is useful for debugging GC issues
    	because it also disables the conservative stack scanning used
    	for asynchronously preempted goroutines.
    
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Thu May 30 17:52:17 UTC 2024
    - 18.9K bytes
    - Viewed (0)
  8. src/cmd/internal/obj/s390x/objz.go

    				// Store link register before decrementing SP, so if a signal comes
    				// during the execution of the function prologue, the traceback
    				// code will not see a half-updated stack frame.
    				// This sequence is not async preemptible, as if we open a frame
    				// at the current SP, it will clobber the saved LR.
    				q = c.ctxt.StartUnsafePoint(p, c.newprog)
    
    				q = obj.Appendp(q, c.newprog)
    				q.As = AMOVD
    				q.From.Type = obj.TYPE_REG
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 21 19:28:53 UTC 2023
    - 21K bytes
    - Viewed (0)
  9. src/runtime/mgcsweep.go

    //
    // Note that this condition may transition from false to true at any
    // time as the sweeper runs. It may transition from true to false if a
    // GC runs; to prevent that the caller must be non-preemptible or must
    // somehow block GC progress.
    func isSweepDone() bool {
    	return sweep.active.isDone()
    }
    
    // Returns only when span s has been swept.
    //
    //go:nowritebarrier
    func (s *mspan) ensureSwept() {
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Wed May 08 17:52:18 UTC 2024
    - 32.9K bytes
    - Viewed (0)
  10. src/cmd/internal/obj/mips/obj0.go

    				// Store link register before decrement SP, so if a signal comes
    				// during the execution of the function prologue, the traceback
    				// code will not see a half-updated stack frame.
    				// This sequence is not async preemptible, as if we open a frame
    				// at the current SP, it will clobber the saved LR.
    				q = c.ctxt.StartUnsafePoint(q, c.newprog)
    
    				q = obj.Appendp(q, newprog)
    				q.As = mov
    				q.Pos = p.Pos
    Registered: Wed Jun 12 16:32:35 UTC 2024
    - Last Modified: Fri Apr 21 19:28:53 UTC 2023
    - 30.6K bytes
    - Viewed (0)
Back to top