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> </td><th width="60%" align="center">More Memory Management Functions</th><td width="20%" align="right"> <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 — 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> </td><td>loff_t <var class="pdparam">newsize</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </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> </td><td width="20%" align="center"><a accesskey="u" href="ch04s03.html">Up</a></td><td width="40%" align="right"> <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> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">truncate_setsize</span></td></tr></table></div></body></html> 19