summaryrefslogtreecommitdiffstats
path: root/mm/vmalloc.c
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-07-23 09:02:27 +1000
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>2010-07-23 12:55:21 +1000
commit171aa2caaad16ed32b655d33565e112a12cb3537 (patch)
treefcaff760d9771e932fbfe831a3fc1ce4dc0bce00 /mm/vmalloc.c
parentca91e6c09d656c6deb1f2bc5d57186c718106aa5 (diff)
powerpc/mm: Fix bugs in huge page hashing
There's a couple of nasty bugs lurking in our huge page hashing code. First, we don't check the access permission atomically with setting the _PAGE_BUSY bit, which means that the PTE value we end up using for the hashing might be different than the one we have checked the access permissions for. We've seen cases where that leads us to try to use an invalidated PTE for hashing, causing all sort of "interesting" issues. Then, we also failed to set _PAGE_DIRTY on a write access. Finally, a minor tweak but we should return 0 when we find the PTE busy, in order to just re-execute the access, rather than 1 which means going to do_page_fault(). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> ---
Diffstat (limited to 'mm/vmalloc.c')
0 files changed, 0 insertions, 0 deletions