linux/include
Nick Piggin f33ea7f404 [PATCH] fix get_user_pages bug
Checking pte_dirty instead of pte_write in __follow_page is problematic
for s390, and for copy_one_pte which leaves dirty when clearing write.

So revert __follow_page to check pte_write as before, and make
do_wp_page pass back a special extra VM_FAULT_WRITE bit to say it has
done its full job: once get_user_pages receives this value, it no longer
requires pte_write in __follow_page.

But most callers of handle_mm_fault, in the various architectures, have
switch statements which do not expect this new case.  To avoid changing
them all in a hurry, make an inline wrapper function (using the old
name) that masks off the new bit, and use the extended interface with
double underscores.

Yes, we do have a call to do_wp_page from do_swap_page, but no need to
change that: in rare case it's needed, another do_wp_page will follow.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
[ Cleanups by Nick Piggin ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-08-03 09:12:05 -07:00
..
acpi /home/lenb/src/to-linus branch 'acpi-2.6.12' 2005-07-29 23:31:17 -04:00
asm-alpha Revert broken "statement with no effect" warning fix 2005-07-28 10:34:47 -07:00
asm-arm [ARM SMP] Fix another ARMv6 bitop problem 2005-07-28 20:36:26 +01:00
asm-arm26 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-cris [PATCH] CRIS update: new subarchitecture v32 2005-07-27 16:26:01 -07:00
asm-frv [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-generic [PATCH] x86_64: Some cleanup in setup64.c 2005-07-28 21:45:58 -07:00
asm-h8300 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-i386 [PATCH] increase PCIBIOS_MIN_IO on x86 2005-08-02 18:21:25 -07:00
asm-ia64 [IA64] inotify: ia64 syscalls. 2005-07-27 10:46:12 -07:00
asm-m32r [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-m68k [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-m68knommu [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-mips [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-parisc [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-ppc [PATCH] ppc32: add missing 4xx EMAC sysfs nodes 2005-08-01 19:14:02 -07:00
asm-ppc64 [PATCH] ppc64: topology API fix 2005-08-01 21:38:01 -07:00
asm-s390 [PATCH] s390: ioprio & inotify system calls. 2005-08-01 21:37:59 -07:00
asm-sh [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-sh64 [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
asm-sparc [SPARC]: Add inotify syscall entries. 2005-07-27 14:14:39 -07:00
asm-sparc64 [SPARC]: Add inotify syscall entries. 2005-07-27 14:14:39 -07:00
asm-um [PATCH] uml: vm86 compile fix 2005-07-28 21:46:03 -07:00
asm-v850 [PATCH] v850: Define L1_CACHE_SHIFT and L1_CACHE_SHIFT_MAX 2005-07-27 16:26:03 -07:00
asm-x86_64 [PATCH] increase PCIBIOS_MIN_IO on x86 2005-08-02 18:21:25 -07:00
asm-xtensa [PATCH] Add emergency_restart() 2005-07-26 14:35:41 -07:00
linux [PATCH] fix get_user_pages bug 2005-08-03 09:12:05 -07:00
math-emu Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
media [PATCH] V4L: Miscellaneous fixes 2005-08-01 19:13:59 -07:00
mtd [MTD] NAND: Honour autoplacement schemes supplied by the caller 2005-05-23 13:20:45 +02:00
net [NET]: Spelling mistakes threshoulds -> thresholds 2005-07-30 17:41:59 -07:00
pcmcia [PATCH] pcmcia: fix pcmcia-cs compilation 2005-07-12 16:00:59 -07:00
rxrpc Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
scsi [SCSI] fix function prototype warning 2005-07-14 11:54:17 -05:00
sound [ALSA] version 1.0.9b 2005-07-28 15:50:42 +02:00
video [PATCH] Clean-up and bug fix for tdfxfb framebuffer size detection 2005-05-01 08:59:25 -07:00