Sophie

Sophie

distrib > CentOS > 6 > i386 > by-pkgid > 2c51d8eb79f8810ada971ee8c30ce1e5 > files > 347

kernel-doc-2.6.32-71.14.1.el6.noarch.rpm

<?xml version="1.0" encoding="ANSI_X3.4-1968" standalone="no"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968" /><title>synchronize_sched</title><meta name="generator" content="DocBook XSL Stylesheets V1.75.2" /><link rel="home" href="index.html" title="Linux Device Drivers" /><link rel="up" href="ch01s08.html" title="Kernel utility functions" /><link rel="prev" href="re149.html" title="synchronize_rcu" /><link rel="next" href="re151.html" title="synchronize_rcu_bh" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span>synchronize_sched</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="re149.html">Prev</a>&#160;</td><th width="60%" align="center">Kernel utility functions</th><td width="20%" align="right">&#160;<a accesskey="n" href="re151.html">Next</a></td></tr></table><hr /></div><div class="refentry" title="synchronize_sched"><a id="API-synchronize-sched"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>synchronize_sched &#8212; 
     wait until an rcu-sched grace period has elapsed.
 </p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" summary="Function synopsis" cellspacing="0" cellpadding="0" class="funcprototype-table"><tr><td><code class="funcdef">void <b class="fsfunc">synchronize_sched </b>(</code></td><td> <var class="pdparam">void</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1" title="Arguments"><a id="id2614764"></a><h2>Arguments</h2><div class="variablelist"><dl><dt><span class="term"><em class="parameter"><code>void</code></em></span></dt><dd><p>
     no arguments
    </p></dd></dl></div></div><div class="refsect1" title="Description"><a id="id2614790"></a><h2>Description</h2><p>
   </p><p>

   Control will return to the caller some time after a full rcu-sched
   grace period has elapsed, in other words after all currently executing
   rcu-sched read-side critical sections have completed.   These read-side
   critical sections are delimited by <code class="function">rcu_read_lock_sched</code> and
   <code class="function">rcu_read_unlock_sched</code>, and may be nested.  Note that <code class="function">preempt_disable</code>,
   <code class="function">local_irq_disable</code>, and so on may be used in place of
   <code class="function">rcu_read_lock_sched</code>.
   </p><p>

   This means that all preempt_disable code sequences, including NMI and
   hardware-interrupt handlers, in progress on entry will have completed
   before this primitive returns.  However, this does not guarantee that
   softirq handlers will have completed, since in some kernels, these
   handlers can run in process context, and can block.
   </p><p>

   This primitive provides the guarantees made by the (now removed)
   <code class="function">synchronize_kernel</code> API.  In contrast, <code class="function">synchronize_rcu</code> only
   guarantees that <code class="function">rcu_read_lock</code> sections will have completed.
   In <span class="quote">&#8220;<span class="quote">classic RCU</span>&#8221;</span>, these two guarantees happen to be one and
   the same, but can differ in realtime RCU implementations.
</p></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="re149.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="ch01s08.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="re151.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span>synchronize_rcu</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span>synchronize_rcu_bh</span></td></tr></table></div></body></html>