|
@@ -1738,6 +1738,13 @@ void task_numa_work(struct callback_head *work)
|
|
|
(vma->vm_file && (vma->vm_flags & (VM_READ|VM_WRITE)) == (VM_READ)))
|
|
|
continue;
|
|
|
|
|
|
+ /*
|
|
|
+ * Skip inaccessible VMAs to avoid any confusion between
|
|
|
+ * PROT_NONE and NUMA hinting ptes
|
|
|
+ */
|
|
|
+ if (!(vma->vm_flags & (VM_READ | VM_EXEC | VM_WRITE)))
|
|
|
+ continue;
|
|
|
+
|
|
|
do {
|
|
|
start = max(start, vma->vm_start);
|
|
|
end = ALIGN(start + (pages << PAGE_SHIFT), HPAGE_SIZE);
|