diff options
Diffstat (limited to 'mm/madvise.c')
-rw-r--r-- | mm/madvise.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/mm/madvise.c b/mm/madvise.c index 54a5d3bc55d5..73180a22877e 100644 --- a/mm/madvise.c +++ b/mm/madvise.c | |||
@@ -86,6 +86,11 @@ static long madvise_willneed(struct vm_area_struct * vma, | |||
86 | if (!file) | 86 | if (!file) |
87 | return -EBADF; | 87 | return -EBADF; |
88 | 88 | ||
89 | if (file->f_mapping->a_ops->get_xip_page) { | ||
90 | /* no bad return value, but ignore advice */ | ||
91 | return 0; | ||
92 | } | ||
93 | |||
89 | *prev = vma; | 94 | *prev = vma; |
90 | start = ((start - vma->vm_start) >> PAGE_SHIFT) + vma->vm_pgoff; | 95 | start = ((start - vma->vm_start) >> PAGE_SHIFT) + vma->vm_pgoff; |
91 | if (end > vma->vm_end) | 96 | if (end > vma->vm_end) |