Merge branch 'akpm'

Fixes from Andrew:

* akpm:
fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters()
mm/thp: fix call to mmu_notifier in set_pmd_migration_entry() v2
mm/mmap.c: don't clobber partially overlapping VMA with MAP_FIXED_NOREPLACE
ocfs2: fix a GCC warning

+4 -7
+1
fs/fat/fatent.c
··· 682 if (ops->ent_get(&fatent) == FAT_ENT_FREE) 683 free++; 684 } while (fat_ent_next(sbi, &fatent)); 685 } 686 sbi->free_clusters = free; 687 sbi->free_clus_valid = 1;
··· 682 if (ops->ent_get(&fatent) == FAT_ENT_FREE) 683 free++; 684 } while (fat_ent_next(sbi, &fatent)); 685 + cond_resched(); 686 } 687 sbi->free_clusters = free; 688 sbi->free_clus_valid = 1;
+2
fs/ocfs2/dlmglue.c
··· 96 }; 97 98 /* Lockdep class keys */ 99 static struct lock_class_key lockdep_keys[OCFS2_NUM_LOCK_TYPES]; 100 101 static int ocfs2_check_meta_downconvert(struct ocfs2_lock_res *lockres, 102 int new_level);
··· 96 }; 97 98 /* Lockdep class keys */ 99 + #ifdef CONFIG_DEBUG_LOCK_ALLOC 100 static struct lock_class_key lockdep_keys[OCFS2_NUM_LOCK_TYPES]; 101 + #endif 102 103 static int ocfs2_check_meta_downconvert(struct ocfs2_lock_res *lockres, 104 int new_level);
-6
mm/huge_memory.c
··· 2885 if (!(pvmw->pmd && !pvmw->pte)) 2886 return; 2887 2888 - mmu_notifier_invalidate_range_start(mm, address, 2889 - address + HPAGE_PMD_SIZE); 2890 - 2891 flush_cache_range(vma, address, address + HPAGE_PMD_SIZE); 2892 pmdval = *pvmw->pmd; 2893 pmdp_invalidate(vma, address, pvmw->pmd); ··· 2897 set_pmd_at(mm, address, pvmw->pmd, pmdswp); 2898 page_remove_rmap(page, true); 2899 put_page(page); 2900 - 2901 - mmu_notifier_invalidate_range_end(mm, address, 2902 - address + HPAGE_PMD_SIZE); 2903 } 2904 2905 void remove_migration_pmd(struct page_vma_mapped_walk *pvmw, struct page *new)
··· 2885 if (!(pvmw->pmd && !pvmw->pte)) 2886 return; 2887 2888 flush_cache_range(vma, address, address + HPAGE_PMD_SIZE); 2889 pmdval = *pvmw->pmd; 2890 pmdp_invalidate(vma, address, pvmw->pmd); ··· 2900 set_pmd_at(mm, address, pvmw->pmd, pmdswp); 2901 page_remove_rmap(page, true); 2902 put_page(page); 2903 } 2904 2905 void remove_migration_pmd(struct page_vma_mapped_walk *pvmw, struct page *new)
+1 -1
mm/mmap.c
··· 1410 if (flags & MAP_FIXED_NOREPLACE) { 1411 struct vm_area_struct *vma = find_vma(mm, addr); 1412 1413 - if (vma && vma->vm_start <= addr) 1414 return -EEXIST; 1415 } 1416
··· 1410 if (flags & MAP_FIXED_NOREPLACE) { 1411 struct vm_area_struct *vma = find_vma(mm, addr); 1412 1413 + if (vma && vma->vm_start < addr + len) 1414 return -EEXIST; 1415 } 1416