unmap_mapping_range — unmap the portion of all mmaps in the specified address_space corresponding to the specified page range in the underlying file.
void unmap_mapping_range ( | struct address_space * | mapping, |
| loff_t const | holebegin, | |
| loff_t const | holelen, | |
| int | even_cows); |
mappingthe address space containing mmaps to be unmapped.
holebegin
byte in first page to unmap, relative to the start of
the underlying file. This will be rounded down to a PAGE_SIZE
boundary. Note that this is different from vmtruncate, which
must keep the partial page. In contrast, we must get rid of
partial pages.
holelensize of prospective hole in bytes. This will be rounded up to a PAGE_SIZE boundary. A holelen of zero truncates to the end of the file.
even_cows1 when truncating a file, unmap even private COWed pages; but 0 when invalidating pagecache, don't throw away private data.