• Nick Piggin's avatar
    mm: special mapping nopage · b1d0e4f5
    Nick Piggin authored
    Convert special mapping install from nopage to fault.
    
    Because the "vm_file" is NULL for the special mapping, the generic VM
    code has messed up "vm_pgoff" thinking that it's an anonymous mapping
    and the offset does't matter.  For that reason, we need to undo the
    vm_pgoff offset that got added into vmf->pgoff.
    
    [ We _really_ should clean that up - either by making this whole special
      mapping code just use a real file entry rather than that ugly array of
      "struct page" pointers, or by just making the VM code realize that
      even if vm_file is NULL it may not be a regular anonymous mmap.
    							 - Linus ]
    Signed-off-by: default avatarNick Piggin <npiggin@suse.de>
    Cc: linux-mm@kvack.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    b1d0e4f5
mmap.c 58.2 KB