• Linus Torvalds's avatar
    ia64: mark special ia64 memory areas anonymous · ebad825c
    Linus Torvalds authored
    Commit bfd40eaf ("mm: fix vma_is_anonymous() false-positives") made
    newly allocated vma's have a dummy vm_ops field so that they wouldn't be
    mistaken for anonymous mappings, and if you wanted an anonymous vma you
    had to explicitly say so by calling "vma_set_anonymous()" on it.
    
    However, it missed the two special vmas that ia64 processes have: the
    register backing store and the NaT page.  So they wouldn't actually act
    like anonymous ranges, and page faults on them caused a SIGBUS rather
    than the creation of a new anon page in them.
    
    That obviously will make any ia64 binary very unhappy indeed, and the
    boot fails early.
    
    Fixes: bfd40eaf ("mm: fix vma_is_anonymous() false-positives")
    Reported-by: default avatarTony Luck <tony.luck@intel.com>
    Cc: Kirill Shutemov <kirill.shutemov@linux.intel.com>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Dmitry Vyukov <dvyukov@google.com>
    Cc: Oleg Nesterov <oleg@redhat.com>
    Cc: Andrea Arcangeli <aarcange@redhat.com>
    Cc: John Stultz <john.stultz@linaro.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    ebad825c
init.c 17.9 KB