1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>vm_unmap_aliases</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The Linux Kernel API"><link rel="up" href="ch04s03.html" title="More Memory Management Functions"><link rel="prev" href="API-follow-pfn.html" title="follow_pfn"><link rel="next" href="API-vm-unmap-ram.html" title="vm_unmap_ram"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">vm_unmap_aliases</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-follow-pfn.html">Prev</a>&#160;</td><th width="60%" align="center">More Memory Management Functions</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-vm-unmap-ram.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-vm-unmap-aliases"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>vm_unmap_aliases &#8212; 
2  unmap outstanding lazy aliases in the vmap layer
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">vm_unmap_aliases </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"><a name="idp1124345196"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>void</code></em></span></dt><dd><p>
4     no arguments
5    </p></dd></dl></div></div><div class="refsect1"><a name="idp1124346804"></a><h2>Description</h2><p>
6   </p><p>
7
8   The vmap/vmalloc layer lazily flushes kernel virtual mappings primarily
9   to amortize TLB flushing overheads. What this means is that any page you
10   have now, may, in a former life, have been mapped into kernel virtual
11   address by the vmap layer and so there might be some CPUs with TLB entries
12   still referencing that page (additional to the regular 1:1 kernel mapping).
13   </p><p>
14
15   vm_unmap_aliases flushes all such lazy mappings. After it returns, we can
16   be sure that none of the pages we have control over will have any aliases
17   from the vmap layer.
18</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-follow-pfn.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="ch04s03.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-vm-unmap-ram.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">follow_pfn</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 class="phrase">vm_unmap_ram</span></td></tr></table></div></body></html>
19