shmem_falloc
struct shmem_falloc *shmem_falloc;
shmem_falloc = inode->i_private;
if (shmem_falloc &&
!shmem_falloc->waitq &&
index >= shmem_falloc->start &&
index < shmem_falloc->next)
shmem_falloc->nr_unswapped += nr_pages;
shmem_falloc = NULL;
if (shmem_falloc)
struct shmem_falloc *shmem_falloc;
shmem_falloc = inode->i_private;
if (shmem_falloc &&
shmem_falloc->waitq &&
vmf->pgoff >= shmem_falloc->start &&
vmf->pgoff < shmem_falloc->next) {
shmem_falloc_waitq = shmem_falloc->waitq;
struct shmem_falloc shmem_falloc;
shmem_falloc.waitq = &shmem_falloc_waitq;
shmem_falloc.start = (u64)unmap_start >> PAGE_SHIFT;
shmem_falloc.next = (unmap_end + 1) >> PAGE_SHIFT;
inode->i_private = &shmem_falloc;
shmem_falloc.waitq = NULL;
shmem_falloc.start = start;
shmem_falloc.next = start;
shmem_falloc.nr_falloced = 0;
shmem_falloc.nr_unswapped = 0;
inode->i_private = &shmem_falloc;
else if (shmem_falloc.nr_unswapped > shmem_falloc.nr_falloced)
shmem_falloc.nr_falloced += index - shmem_falloc.next;
shmem_falloc.next = index;