mm/hugetlb: expose hugetlb fault mutex for use by fallocate
[linux-2.6-microblaze.git] / include / linux / hugetlb.h
index d891f94..530cf6f 100644 (file)
@@ -35,6 +35,9 @@ struct resv_map {
        struct kref refs;
        spinlock_t lock;
        struct list_head regions;
+       long adds_in_progress;
+       struct list_head region_cache;
+       long region_cache_count;
 };
 extern struct resv_map *resv_map_alloc(void);
 void resv_map_release(struct kref *ref);
@@ -85,6 +88,11 @@ int dequeue_hwpoisoned_huge_page(struct page *page);
 bool isolate_huge_page(struct page *page, struct list_head *list);
 void putback_active_hugepage(struct page *page);
 void free_huge_page(struct page *page);
+extern struct mutex *hugetlb_fault_mutex_table;
+u32 hugetlb_fault_mutex_hash(struct hstate *h, struct mm_struct *mm,
+                               struct vm_area_struct *vma,
+                               struct address_space *mapping,
+                               pgoff_t idx, unsigned long address);
 
 #ifdef CONFIG_ARCH_WANT_HUGE_PMD_SHARE
 pte_t *huge_pmd_share(struct mm_struct *mm, unsigned long addr, pud_t *pud);