page_cache_prev_hole (9) - Linux Man Pages
page_cache_prev_hole: find the prev hole (not-present entry)
page_cache_prev_hole - find the prev hole (not-present entry)
pgoff_t page_cache_prev_hole(struct address_space
*mapping, pgoff_t index, unsigned long max_scan);
- maximum range to search
the index of the hole if found, otherwise returns an index outside of the set specified (in which case 'index - return >= max_scan' will be true). In rare cases of wrap-around, ULONG_MAX will be returned.
page_cache_prev_hole may be called under rcu_read_lock. However, like radix_tree_gang_lookup, this will not atomically search a snapshot of the tree at a single point in time. For example, if a hole is created at index 10, then subsequently a hole is created at index 5, page_cache_prev_hole covering both indexes may return 5 if called under rcu_read_lock.