kernel_optimize_test/include/asm-mips
Nick Piggin 8b1f312461 [PATCH] mm: move_pte to remap ZERO_PAGE
Move the ZERO_PAGE remapping complexity to the move_pte macro in
asm-generic, have it conditionally depend on
__HAVE_ARCH_MULTIPLE_ZERO_PAGE, which gets defined for MIPS.

For architectures without __HAVE_ARCH_MULTIPLE_ZERO_PAGE, move_pte becomes
a noop.

From: Hugh Dickins <hugh@veritas.com>

Fix nasty little bug we've missed in Nick's mremap move ZERO_PAGE patch.
The "pte" at that point may be a swap entry or a pte_file entry: we must
check pte_present before perhaps corrupting such an entry.

Patch below against 2.6.14-rc2-mm1, but the same bug is in 2.6.14-rc2's
mm/mremap.c, and more dangerous there since it's affecting all arches: I
think the safest course is to send Nick's patch and Yoichi's build fix and
this fix (build tested) on to Linus - so only MIPS can be affected.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-09-28 07:46:40 -07:00
..
arc
cobalt
ddb5xxx
dec
galileo-boards
gcc
ip32
it8172
jmr3927
lasat
mach-atlas
mach-au1x00
mach-db1x00
mach-ddb5074
mach-dec
mach-ev64120
mach-ev96100
mach-generic
mach-ip22
mach-ip27
mach-ip32
mach-ja
mach-jazz
mach-jmr3927/asm
mach-lasat
mach-mips
mach-ocelot
mach-ocelot3
mach-pb1x00
mach-qemu
mach-rm200
mach-sibyte
mach-yosemite
mips-boards
pci
sgi
sibyte
sn
tx4927
vr41xx
xtalk
8253pit.h
a.out.h
addrspace.h
asm.h
asmmacro-32.h
asmmacro-64.h
asmmacro.h
atomic.h
auxvec.h
bcache.h
bitops.h
bootinfo.h
branch.h
break.h
bug.h
bugs.h
byteorder.h
cache.h
cachectl.h
cacheflush.h
cacheops.h
checksum.h
compat.h
compiler.h
cpu-features.h
cpu-info.h
cpu.h
cputime.h
current.h
ddb5074.h
debug.h
delay.h
div64.h
dma-mapping.h
dma.h
ds1286.h
elf.h
emergency-restart.h
errno.h
fcntl.h
fixmap.h
floppy.h
fpregdef.h
fpu_emulator.h
fpu.h
futex.h
gdb-stub.h
gfx.h
gt64120.h
gt64240.h
hardirq.h
hazards.h
highmem.h
hw_irq.h
i8259.h
ide.h
inst.h
interrupt.h
inventory.h
io.h
ioctl.h
ioctls.h
ipc.h
ipcbuf.h
irq_cpu.h
irq.h
isadep.h
it8712.h
jazz.h
jazzdma.h
kmap_types.h
linkage.h
local.h
m48t35.h
m48t37.h
marvell.h
mc146818-time.h
mc146818rtc.h
mipsprom.h
mipsregs.h
mman.h
mmu_context.h
mmu.h
mmzone.h
module.h
msc01_ic.h
msgbuf.h
namei.h
nile4.h
numnodes.h
paccess.h
page.h
param.h
parport.h
pci.h
percpu.h
pgalloc.h
pgtable-32.h
pgtable-64.h
pgtable-bits.h
pgtable.h
pmon.h
poll.h
posix_types.h
prctl.h
prefetch.h
processor.h
ptrace.h
qemu.h
r4kcache.h
reboot.h
reg.h
regdef.h
resource.h
riscos-syscall.h
rtc.h
scatterlist.h
sections.h
segment.h
semaphore.h
sembuf.h
serial.h
setup.h
sgialib.h
sgiarcs.h
sgidefs.h
shmbuf.h
shmparam.h
sigcontext.h
siginfo.h
signal.h
sim.h
smp.h
sni.h
socket.h
sockios.h
spinlock_types.h
spinlock.h
stackframe.h
stat.h
statfs.h
string.h
suspend.h
sysmips.h
system.h
termbits.h
termios.h
thread_info.h
time.h
timex.h
titan_dep.h
tlb.h
tlbdebug.h
tlbflush.h
topology.h
traps.h
tx3912.h
types.h
uaccess.h
ucontext.h
unaligned.h
unistd.h
user.h
vga.h
war.h
watch.h
wbflush.h
xor.h
xxs1500.h