}
 
 unsigned long
-arch_get_unmapped_area(struct file *filp, unsigned long addr,
-               unsigned long len, unsigned long pgoff, unsigned long flags)
+arch_get_unmapped_area_vmflags(struct file *filp, unsigned long addr, unsigned long len,
+                      unsigned long pgoff, unsigned long flags, vm_flags_t vm_flags)
 {
        struct mm_struct *mm = current->mm;
        struct vm_area_struct *vma;
 }
 
 unsigned long
-arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr0,
-                         const unsigned long len, const unsigned long pgoff,
-                         const unsigned long flags)
+arch_get_unmapped_area_topdown_vmflags(struct file *filp, unsigned long addr0,
+                         unsigned long len, unsigned long pgoff,
+                         unsigned long flags, vm_flags_t vm_flags)
 {
        struct vm_area_struct *vma;
        struct mm_struct *mm = current->mm;
         */
        return arch_get_unmapped_area(filp, addr0, len, pgoff, flags);
 }
+
+unsigned long
+arch_get_unmapped_area(struct file *filp, unsigned long addr,
+               unsigned long len, unsigned long pgoff, unsigned long flags)
+{
+       return arch_get_unmapped_area_vmflags(filp, addr, len, pgoff, flags, 0);
+}
+
+unsigned long
+arch_get_unmapped_area_topdown(struct file *filp, const unsigned long addr,
+                         const unsigned long len, const unsigned long pgoff,
+                         const unsigned long flags)
+{
+       return arch_get_unmapped_area_topdown_vmflags(filp, addr, len, pgoff, flags, 0);
+}