Update __get_unmapped_area() to be parameterised by vma_flags_t rather than vm_flags_t as part of the effort to move VMA flags from a system word to a bitmap. We cascade the changes up to arch_get_unmapped_area_topdown() and arch_get_unmapped_area(), where, for now, we use vma_flags_to_legacy() in order to propagate the VMA flags. No functional change intended.
Showing the changes to include (3 of 6 files). Show all
Unified · Split
| @@ -391,9 +391,9 @@ static inline bool thp_disabled_by_hw(void) · 390 unmodified lines | |||
| 391 | 391 | ||
| 392 | unsigned long thp_get_unmapped_area(struct file *filp, unsigned long addr, | 392 | unsigned long thp_get_unmapped_area(struct file *filp, unsigned long addr, |
| 393 | unsigned long len, unsigned long pgoff, unsigned long flags); | 393 | unsigned long len, unsigned long pgoff, unsigned long flags); |
| 394 | unsigned long thp_get_unmapped_area_vmflags(struct file *filp, unsigned long addr, | 394 | unsigned long thp_get_unmapped_area_vmaflags(struct file *filp, unsigned long addr, |
| 395 | unsigned long len, unsigned long pgoff, unsigned long flags, | 395 | unsigned long len, unsigned long pgoff, unsigned long flags, |
| 396 | vm_flags_t vm_flags); | 396 | vma_flags_t vma_flags); |
| 397 | 397 | ||
| 398 | enum split_type { | 398 | enum split_type { |
| 399 | SPLIT_TYPE_UNIFORM, | 399 | SPLIT_TYPE_UNIFORM, |
| @@ -617,9 +617,9 @@ static inline unsigned long thp_vma_allowable_orders(struct vm_area_struct *vma, · 217 unmodified lines | |||
| 617 | #define thp_get_unmapped_area NULL | 617 | #define thp_get_unmapped_area NULL |
| 618 | 618 | ||
| 619 | static inline unsigned long | 619 | static inline unsigned long |
| 620 | thp_get_unmapped_area_vmflags(struct file *filp, unsigned long addr, | 620 | thp_get_unmapped_area_vmaflags(struct file *filp, unsigned long addr, |
| 621 | unsigned long len, unsigned long pgoff, | 621 | unsigned long len, unsigned long pgoff, |
| 622 | unsigned long flags, vm_flags_t vm_flags) | 622 | unsigned long flags, vma_flags_t vma_flags) |
| 623 | { | 623 | { |
| 624 | return 0; | 624 | return 0; |
| 625 | } | 625 | } |
| @@ -4191,13 +4191,15 @@ unsigned long randomize_page(unsigned long start, unsigned long range); · 4190 unmodified lines | |||
| 4191 | 4191 | ||
| 4192 | unsigned long | 4192 | unsigned long |
| 4193 | __get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, | 4193 | __get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, |
| 4194 | unsigned long pgoff, unsigned long flags, vm_flags_t vm_flags); | 4194 | unsigned long pgoff, unsigned long flags, |
| 4195 | vma_flags_t vma_flags); | ||
| 4195 | 4196 | ||
| 4196 | static inline unsigned long | 4197 | static inline unsigned long |
| 4197 | get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, | 4198 | get_unmapped_area(struct file *file, unsigned long addr, unsigned long len, |
| 4198 | unsigned long pgoff, unsigned long flags) | 4199 | unsigned long pgoff, unsigned long flags) |
| 4199 | { | 4200 | { |
| 4200 | return __get_unmapped_area(file, addr, len, pgoff, flags, 0); | 4201 | return __get_unmapped_area(file, addr, len, pgoff, flags, |
| 4202 | EMPTY_VMA_FLAGS); | ||
| 4201 | } | 4203 | } |
| 4202 | 4204 | ||
| 4203 | unsigned long do_mmap(struct file *file, unsigned long addr, | 4205 | unsigned long do_mmap(struct file *file, unsigned long addr, |
| @@ -193,12 +193,9 @@ unsigned long mm_get_unmapped_area(struct file *filp, unsigned long addr, · 192 unmodified lines | |||
| 193 | unsigned long len, unsigned long pgoff, | 193 | unsigned long len, unsigned long pgoff, |
| 194 | unsigned long flags); | 194 | unsigned long flags); |
| 195 | 195 | ||
| 196 | unsigned long mm_get_unmapped_area_vmflags(struct file *filp, | 196 | unsigned long mm_get_unmapped_area_vmaflags(struct file *filp, |
| 197 | unsigned long addr, | 197 | unsigned long addr, unsigned long len, unsigned long pgoff, |
| 198 | unsigned long len, | 198 | unsigned long flags, vma_flags_t vma_flags); |
| 199 | unsigned long pgoff, | ||
| 200 | unsigned long flags, | ||
| 201 | vm_flags_t vm_flags); | ||
| 202 | 199 | ||
| 203 | unsigned long | 200 | unsigned long |
| 204 | generic_get_unmapped_area(struct file *filp, unsigned long addr, | 201 | generic_get_unmapped_area(struct file *filp, unsigned long addr, |