1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>truncate_pagecache</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-invalidate-inode-pages2.html" title="invalidate_inode_pages2"><link rel="next" href="API-truncate-setsize.html" title="truncate_setsize"></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">truncate_pagecache</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-invalidate-inode-pages2.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-truncate-setsize.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-truncate-pagecache"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>truncate_pagecache &#8212; 
2     unmap and remove pagecache that has been truncated
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">truncate_pagecache </b>(</code></td><td>struct inode * <var class="pdparam">inode</var>, </td></tr><tr><td>&#160;</td><td>loff_t <var class="pdparam">newsize</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1124897620"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>inode</code></em></span></dt><dd><p>
4     inode
5    </p></dd><dt><span class="term"><em class="parameter"><code>newsize</code></em></span></dt><dd><p>
6     new file size
7    </p></dd></dl></div></div><div class="refsect1"><a name="idp1124900236"></a><h2>Description</h2><p>
8   inode's new i_size must already be written before truncate_pagecache
9   is called.
10   </p><p>
11
12   This function should typically be called before the filesystem
13   releases resources associated with the freed range (eg. deallocates
14   blocks). This way, pagecache will always stay logically coherent
15   with on-disk format, and the filesystem would not have to deal with
16   situations such as writepage being called for a page that has already
17   had its underlying blocks deallocated.
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-invalidate-inode-pages2.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-truncate-setsize.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">invalidate_inode_pages2</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">truncate_setsize</span></td></tr></table></div></body></html>
19