diff options
Diffstat (limited to 'arch/x86/mm/hugetlbpage.c')
-rw-r--r-- | arch/x86/mm/hugetlbpage.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/mm/hugetlbpage.c b/arch/x86/mm/hugetlbpage.c index 069ce7c37c01..f581a18c0d4d 100644 --- a/arch/x86/mm/hugetlbpage.c +++ b/arch/x86/mm/hugetlbpage.c | |||
@@ -72,7 +72,7 @@ static void huge_pmd_share(struct mm_struct *mm, unsigned long addr, pud_t *pud) | |||
72 | if (!vma_shareable(vma, addr)) | 72 | if (!vma_shareable(vma, addr)) |
73 | return; | 73 | return; |
74 | 74 | ||
75 | spin_lock(&mapping->i_mmap_lock); | 75 | mutex_lock(&mapping->i_mmap_mutex); |
76 | vma_prio_tree_foreach(svma, &iter, &mapping->i_mmap, idx, idx) { | 76 | vma_prio_tree_foreach(svma, &iter, &mapping->i_mmap, idx, idx) { |
77 | if (svma == vma) | 77 | if (svma == vma) |
78 | continue; | 78 | continue; |
@@ -97,7 +97,7 @@ static void huge_pmd_share(struct mm_struct *mm, unsigned long addr, pud_t *pud) | |||
97 | put_page(virt_to_page(spte)); | 97 | put_page(virt_to_page(spte)); |
98 | spin_unlock(&mm->page_table_lock); | 98 | spin_unlock(&mm->page_table_lock); |
99 | out: | 99 | out: |
100 | spin_unlock(&mapping->i_mmap_lock); | 100 | mutex_unlock(&mapping->i_mmap_mutex); |
101 | } | 101 | } |
102 | 102 | ||
103 | /* | 103 | /* |
@@ -326,7 +326,7 @@ try_again: | |||
326 | if (mm->free_area_cache < len) | 326 | if (mm->free_area_cache < len) |
327 | goto fail; | 327 | goto fail; |
328 | 328 | ||
329 | /* either no address requested or cant fit in requested address hole */ | 329 | /* either no address requested or can't fit in requested address hole */ |
330 | addr = (mm->free_area_cache - len) & huge_page_mask(h); | 330 | addr = (mm->free_area_cache - len) & huge_page_mask(h); |
331 | do { | 331 | do { |
332 | /* | 332 | /* |