On Mon, Jul 13, 2015 at 01:54:12PM +0300, Kirill A. Shutemov wrote: > !vma->vm_file is not reliable to detect anon VMA, because not all > drivers bother set it. Let's use vma_is_anonymous() instead. > > Signed-off-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx> > Cc: Johannes Weiner <hannes@xxxxxxxxxxx> > Cc: Michal Hocko <mhocko@xxxxxxx> > --- > mm/memcontrol.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index acb93c554f6e..a624709f0dd7 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -4809,7 +4809,7 @@ static struct page *mc_handle_file_pte(struct vm_area_struct *vma, > struct address_space *mapping; > pgoff_t pgoff; > > - if (!vma->vm_file) /* anonymous vma */ > + if (vma_is_anonymous(vma)) /* anonymous vma */ > return NULL; > if (!(mc.flags & MOVE_FILE)) > return NULL; The next line does vma->vm_file->f_mapping, so it had better be !NULL. It's not about reliably detecting anonymous vs. file, it is about whether there is a mapping against which we can do find_get_page(). -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>