diff --git a/include/linux/mm.h b/include/linux/mm.h index 1ac1f06a4be6b22faf3883c760515a042a6d347e..edf44265c752ab6042a7743d57fe155766aa0e32 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -379,7 +379,7 @@ enum page_entry_size { /* * These are the virtual MM functions - opening of an area, closing and * unmapping it (needed to keep files on disk up-to-date etc), pointer - * to the functions called when a no-page or a wp-page exception occurs. + * to the functions called when a no-page or a wp-page exception occurs. */ struct vm_operations_struct { void (*open)(struct vm_area_struct * area); @@ -1267,10 +1267,10 @@ struct page *_vm_normal_page(struct vm_area_struct *vma, unsigned long addr, struct page *vm_normal_page_pmd(struct vm_area_struct *vma, unsigned long addr, pmd_t pmd); -int zap_vma_ptes(struct vm_area_struct *vma, unsigned long address, - unsigned long size); +void zap_vma_ptes(struct vm_area_struct *vma, unsigned long address, + unsigned long size); void zap_page_range(struct vm_area_struct *vma, unsigned long address, - unsigned long size); + unsigned long size); void unmap_vmas(struct mmu_gather *tlb, struct vm_area_struct *start_vma, unsigned long start, unsigned long end); diff --git a/mm/memory.c b/mm/memory.c index 01f5464e0fd28802753c0085e1d30f98a4557d3e..5d8c2afb07307d03fa5b9e8c55ff122884f11f50 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -1660,16 +1660,15 @@ static void zap_page_range_single(struct vm_area_struct *vma, unsigned long addr * * The entire address range must be fully contained within the vma. * - * Returns 0 if successful. */ -int zap_vma_ptes(struct vm_area_struct *vma, unsigned long address, +void zap_vma_ptes(struct vm_area_struct *vma, unsigned long address, unsigned long size) { if (address < vma->vm_start || address + size > vma->vm_end || !(vma->vm_flags & VM_PFNMAP)) - return -1; + return; + zap_page_range_single(vma, address, size, NULL); - return 0; } EXPORT_SYMBOL_GPL(zap_vma_ptes);