summaryrefslogtreecommitdiff
path: root/static/netbsd/man9/cpu_need_resched.9 3.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/netbsd/man9/cpu_need_resched.9 3.html')
-rw-r--r--static/netbsd/man9/cpu_need_resched.9 3.html80
1 files changed, 0 insertions, 80 deletions
diff --git a/static/netbsd/man9/cpu_need_resched.9 3.html b/static/netbsd/man9/cpu_need_resched.9 3.html
deleted file mode 100644
index 4db08d3c..00000000
--- a/static/netbsd/man9/cpu_need_resched.9 3.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">CPU_NEED_RESCHED(9)</td>
- <td class="head-vol">Kernel Developer's Manual</td>
- <td class="head-rtitle">CPU_NEED_RESCHED(9)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">cpu_need_resched</code> &#x2014;
- <span class="Nd">context switch notification</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp"><code class="In">#include
- &lt;<a class="In">sys/cpu.h</a>&gt;</code></p>
-<p class="Pp"><var class="Ft">void</var>
- <br/>
- <code class="Fn">cpu_need_resched</code>(<var class="Fa" style="white-space: nowrap;">struct
- cpu_info *ci</var>, <var class="Fa" style="white-space: nowrap;">struct lwp
- *l</var>, <var class="Fa" style="white-space: nowrap;">int flags</var>);</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
-<p class="Pp">The
- <a class="permalink" href="#cpu_need_resched"><code class="Fn" id="cpu_need_resched">cpu_need_resched</code></a>()
- function is the machine-independent interface for the scheduler to notify
- machine-dependent code that a context switch from the current LWP
- <var class="Fa">l</var>, on the cpu <var class="Fa">ci</var>, is required.
- This event may occur if a higher priority LWP appears on the run queue or if
- the current LWP has exceeded its time slice. <var class="Fa">l</var> is the
- last LWP observed running on the CPU. It may no longer be running, as
- <code class="Fn">cpu_need_resched</code>() can be called without holding
- scheduler locks.</p>
-<p class="Pp">If the <code class="Dv">RESCHED_KPREEMPT</code> flag is specified
- in <var class="Fa">flags</var> and <code class="Dv">__HAVE_PREEMPTION</code>
- C pre-processor macro is defined in
- <code class="In">&lt;<a class="In">machine/intr.h</a>&gt;</code>,
- machine-dependent code should make a context switch happen as soon as
- possible even if the CPU is running in kernel mode. If the
- <code class="Dv">RESCHED_KPREEMPT</code> flag is not specified, then
- <code class="Dv">RESCHED_UPREEMPT</code> is specified instead.</p>
-<p class="Pp">If the <code class="Dv">RESCHED_IDLE</code> flag is specified in
- <var class="Fa">flags</var>, the last thread observed running on the CPU was
- the idle LWP.</p>
-<p class="Pp" id="cpu_need_resched~2">If <code class="Dv">RESCHED_REMOTE</code>
- flag is specified in <var class="Fa">flags</var>, the request is not for the
- current CPU. The opposite also holds true. If <var class="Fa">ci</var> is
- not the current processor,
- <a class="permalink" href="#cpu_need_resched~2"><code class="Fn">cpu_need_resched</code></a>()
- typically issues an inter processor call to the processor to make it notice
- the need of a context switch as soon as possible.</p>
-<p class="Pp" id="cpu_need_resched~3"><a class="permalink" href="#cpu_need_resched~3"><code class="Fn">cpu_need_resched</code></a>()
- is always called with kernel preemption disabled.</p>
-<p class="Pp" id="cpu_need_resched~4">Typically, the
- <a class="permalink" href="#cpu_need_resched~4"><code class="Fn">cpu_need_resched</code></a>()
- function will perform the following operations:</p>
-<ul class="Bl-bullet Bd-indent">
- <li>Set a per-processor flag which is checked by <a class="Xr">userret(9)</a>
- when returning to user-mode execution.</li>
- <li>Post an asynchronous software trap (AST).</li>
- <li id="userret">Send an inter processor interrupt to wake up
- <a class="Xr">cpu_idle(9)</a> and/or force an user process across the
- user/kernel boundary, thus making a trip through
- <a class="permalink" href="#userret"><code class="Fn">userret</code></a>().</li>
-</ul>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp"><a class="Xr">sched_4bsd(9)</a>, <a class="Xr">userret(9)</a></p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">November 17, 2019</td>
- <td class="foot-os">NetBSD 10.1</td>
- </tr>
-</table>