Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 20acce67 authored by Souptick Joarder's avatar Souptick Joarder Committed by Linus Torvalds
Browse files

mm/shmem.c: use new return type vm_fault_t

Use new return type vm_fault_t for fault handler.  For now, this is just
documenting that the function returns a VM_FAULT value rather than an
errno.  Once all instances are converted, vm_fault_t will become a
distinct type.

See commit 1c8f4220 ("mm: change return type to vm_fault_t")

vmf_error() is the newly introduce inline function in 4.17-rc6.

Link: http://lkml.kernel.org/r/20180521202410.GA17912@jordon-HP-15-Notebook-PC


Signed-off-by: default avatarSouptick Joarder <jrdr.linux@gmail.com>
Reviewed-by: default avatarMatthew Wilcox <mawilcox@microsoft.com>
Cc: Hugh Dickins <hughd@google.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 325d7d4a
Loading
Loading
Loading
Loading
+6 −6
Original line number Original line Diff line number Diff line
@@ -1947,14 +1947,14 @@ static int synchronous_wake_function(wait_queue_entry_t *wait, unsigned mode, in
	return ret;
	return ret;
}
}


static int shmem_fault(struct vm_fault *vmf)
static vm_fault_t shmem_fault(struct vm_fault *vmf)
{
{
	struct vm_area_struct *vma = vmf->vma;
	struct vm_area_struct *vma = vmf->vma;
	struct inode *inode = file_inode(vma->vm_file);
	struct inode *inode = file_inode(vma->vm_file);
	gfp_t gfp = mapping_gfp_mask(inode->i_mapping);
	gfp_t gfp = mapping_gfp_mask(inode->i_mapping);
	enum sgp_type sgp;
	enum sgp_type sgp;
	int error;
	int err;
	int ret = VM_FAULT_LOCKED;
	vm_fault_t ret = VM_FAULT_LOCKED;


	/*
	/*
	 * Trinity finds that probing a hole which tmpfs is punching can
	 * Trinity finds that probing a hole which tmpfs is punching can
@@ -2022,10 +2022,10 @@ static int shmem_fault(struct vm_fault *vmf)
	else if (vma->vm_flags & VM_HUGEPAGE)
	else if (vma->vm_flags & VM_HUGEPAGE)
		sgp = SGP_HUGE;
		sgp = SGP_HUGE;


	error = shmem_getpage_gfp(inode, vmf->pgoff, &vmf->page, sgp,
	err = shmem_getpage_gfp(inode, vmf->pgoff, &vmf->page, sgp,
				  gfp, vma, vmf, &ret);
				  gfp, vma, vmf, &ret);
	if (error)
	if (err)
		return ((error == -ENOMEM) ? VM_FAULT_OOM : VM_FAULT_SIGBUS);
		return vmf_error(err);
	return ret;
	return ret;
}
}