We rely on ->vm_ops == NULL to detect anonymous VMA but this check is not always reliable: - MPX sets ->vm_ops on anonymous VMA; - many drivers don't set ->vm_ops. See for instance hpet_mmap(). This patchset makes vma_is_anonymous() more reliable and makes few cleanups around the code. v2: - drop broken patch; - more cleanup for mpx code (Oleg); - vma_is_anonymous() in create_huge_pmd() and wp_huge_pmd(); Kirill A. Shutemov (5): mm: mark most vm_operations_struct const x86, mpx: do not set ->vm_ops on mpx VMAs mm: make sure all file VMAs have ->vm_ops set mm: use vma_is_anonymous() in create_huge_pmd() and wp_huge_pmd() mm, madvise: use vma_is_anonymous() to check for anon VMA Oleg Nesterov (1): mm, mpx: add "vm_flags_t vm_flags" arg to do_mmap_pgoff() arch/x86/kernel/vsyscall_64.c | 2 +- arch/x86/mm/mmap.c | 7 +++ arch/x86/mm/mpx.c | 71 +++----------------------- drivers/android/binder.c | 2 +- drivers/gpu/drm/vgem/vgem_drv.c | 2 +- drivers/hsi/clients/cmt_speech.c | 2 +- drivers/infiniband/hw/qib/qib_file_ops.c | 2 +- drivers/infiniband/hw/qib/qib_mmap.c | 2 +- drivers/media/platform/omap/omap_vout.c | 2 +- drivers/misc/genwqe/card_dev.c | 2 +- drivers/staging/android/ion/ion.c | 2 +- drivers/staging/comedi/comedi_fops.c | 2 +- drivers/video/fbdev/omap2/omapfb/omapfb-main.c | 2 +- drivers/xen/gntalloc.c | 2 +- drivers/xen/gntdev.c | 2 +- drivers/xen/privcmd.c | 4 +- fs/ceph/addr.c | 2 +- fs/cifs/file.c | 2 +- include/linux/mm.h | 12 ++++- mm/madvise.c | 2 +- mm/memory.c | 4 +- mm/mmap.c | 18 ++++--- mm/nommu.c | 15 +++--- security/selinux/selinuxfs.c | 2 +- 24 files changed, 66 insertions(+), 99 deletions(-) -- 2.1.4 -- 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>