https://github.com/torvalds/linux
Revision e1ee65d85904c5dd4b9cea1b15d5e85e20eae8a1 authored by David Howells on 25 March 2010, 16:48:44 UTC, committed by Linus Torvalds on 25 March 2010, 21:13:27 UTC
Fix __get_user_pages() to make it pin the last page on a buffer that doesn't
begin at the start of a page, but is a multiple of PAGE_SIZE in size.

The problem is that __get_user_pages() advances the pointer too much when it
iterates to the next page if the page it's currently looking at isn't used from
the first byte.  This can cause the end of a short VMA to be reached
prematurely, resulting in the last page being lost.

Signed-off-by: Steven J. Magnani <steve@digidescorp.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
1 parent 7561e8c
History
Tip revision: e1ee65d85904c5dd4b9cea1b15d5e85e20eae8a1 authored by David Howells on 25 March 2010, 16:48:44 UTC
NOMMU: Fix __get_user_pages() to pin last page on offset buffers
Tip revision: e1ee65d
File Mode Size
Documentation
arch
block
crypto
drivers
firmware
fs
include
init
ipc
kernel
lib
mm
net
samples
scripts
security
sound
tools
usr
virt
.gitignore -rw-r--r-- 930 bytes
.mailmap -rw-r--r-- 3.9 KB
COPYING -rw-r--r-- 18.3 KB
CREDITS -rw-r--r-- 91.8 KB
Kbuild -rw-r--r-- 2.4 KB
MAINTAINERS -rw-r--r-- 165.9 KB
Makefile -rw-r--r-- 52.0 KB
README -rw-r--r-- 17.0 KB
REPORTING-BUGS -rw-r--r-- 3.3 KB

README

back to top