kernel-ark/include/asm-powerpc
David Gibson cbf52afdc0 [PATCH] powerpc: Add missing icache flushes for hugepages
On most powerpc CPUs, the dcache and icache are not coherent so
between writing and executing a page, the caches must be flushed.
Userspace programs assume pages given to them by the kernel are icache
clean, so we must do this flush between the kernel clearing a page and
it being mapped into userspace for execute.  We were not doing this
for hugepages, this patch corrects the situation.

We use the same lazy mechanism as we use for normal pages, delaying
the flush until userspace actually attempts to execute from the page
in question.

Tested on G5.

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
2005-12-09 16:30:48 +11:00
..
iseries modify defines according to _ASM_POWERPC_ISERIES_ 2005-11-02 15:53:01 +11:00
8253pit.h
a.out.h
abs_addr.h [PATCH] powerpc: Move various ppc64 files with no ppc32 equivalent to powerpc 2005-11-10 11:24:04 +11:00
agp.h
asm-compat.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
atomic.h [PATCH] atomic: inc_not_zero 2005-11-13 18:14:16 -08:00
auxvec.h [PATCH] powerpc: Merge vdso's and add vdso support to 32 bits kernel 2005-11-11 22:25:39 +11:00
backlight.h
bitops.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
btext.h powerpc: Move a bunch of ppc64 headers to include/asm-powerpc 2005-11-14 17:22:01 +11:00
bug.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
bugs.h
byteorder.h
cache.h [PATCH] powerpc: Merge cacheflush.h and cache.h 2005-11-10 13:09:22 +11:00
cacheflush.h [PATCH] powerpc: Merge cacheflush.h and cache.h 2005-11-10 13:09:22 +11:00
checksum.h [PATCH] powerpc: merge include/asm-ppc*/checksum.h into include/asm-powerpc/checksum.h 2005-10-26 15:54:31 +10:00
compat.h [PATCH] powerpc: Move various ppc64 files with no ppc32 equivalent to powerpc 2005-11-10 11:24:04 +11:00
cputable.h [PATCH] powerpc: merge align.c 2005-11-18 14:39:23 +11:00
cputime.h
current.h [PATCH] powerpc: Merge current.h 2005-11-10 11:23:53 +11:00
dbdma.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
delay.h powerpc: Fix delay functions for 601 processors 2005-11-18 14:08:12 +11:00
div64.h
dma-mapping.h powerpc: merge dma-mapping.h 2005-11-19 01:48:52 +11:00
dma.h
eeh_event.h [PATCH] ppc64: PCI error event dispatcher 2005-11-10 11:38:05 +11:00
eeh.h [PATCH] Avoid use of uninitialised spinlock in EEH. 2005-11-17 16:53:38 +11:00
elf.h [PATCH] powerpc: Merge vdso's and add vdso support to 32 bits kernel 2005-11-11 22:25:39 +11:00
emergency-restart.h
errno.h
fcntl.h
firmware.h [PATCH] powerpc: merge code values for identifying platforms 2005-11-10 13:37:51 +11:00
floppy.h powerpc: Move a bunch of ppc64 headers to include/asm-powerpc 2005-11-14 17:22:01 +11:00
futex.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
grackle.h powerpc: Pull out MPC106 (grackle) initialization code into its own file 2005-10-26 17:16:38 +10:00
hardirq.h
heathrow.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
hvcall.h [PATCH] powerpc: Move more ppc64 files with no ppc32 equivalent to powerpc 2005-11-10 15:32:37 +11:00
hvconsole.h powerpc: Move a bunch of ppc64 headers to include/asm-powerpc 2005-11-14 17:22:01 +11:00
hvcserver.h powerpc: Move a bunch of ppc64 headers to include/asm-powerpc 2005-11-14 17:22:01 +11:00
hw_irq.h ppc64: remove ppc_irq_dispatch_handler 2005-11-09 16:19:53 +11:00
i8259.h powerpc: Merge i8259.c into arch/powerpc/sysdev 2005-10-26 16:47:42 +10:00
ide.h powerpc: merge ide.h 2005-11-08 12:20:34 +11:00
io.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
ioctl.h
ioctls.h powerpc: remove duplicate ioctl definitions 2005-11-01 14:36:30 +11:00
iommu.h [PATCH] powerpc: update my email address 2005-11-23 21:23:20 +11:00
ipc.h
ipcbuf.h [PATCH] powerpc: Keep fixing merged ipcbuf.h 2005-11-03 16:58:17 +11:00
irq.h [PATCH] ppc32: fix PQ2 PCI DMA interrupt handling 2005-11-11 22:19:56 +11:00
kdebug.h
kexec.h [PATCH] powerpc: Export htab start/end via device tree 2005-11-14 16:34:06 +11:00
keylargo.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
kmap_types.h
kprobes.h [PATCH] Kprobes: Track kprobe on a per_cpu basis - ppc64 changes 2005-11-07 07:53:45 -08:00
linkage.h
lmb.h
local.h
lppaca.h [PATCH] powerpc: Move various ppc64 files with no ppc32 equivalent to powerpc 2005-11-10 11:24:04 +11:00
machdep.h [PATCH] powerpc: Turn cpu_irq_down into kexec_cpu_down 2005-11-14 16:33:09 +11:00
macio.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
mc146818rtc.h
mediabay.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
mman.h
mmu_context.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
mmu.h [PATCH] powerpc: Add missing icache flushes for hugepages 2005-12-09 16:30:48 +11:00
mmzone.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
module.h
mpic.h powerpc: Move smp_mpic_message_pass into mpic.c 2005-10-20 17:09:51 +10:00
msgbuf.h
namei.h
numnodes.h [PATCH] powerpc: Merge (move) numnodes.h and sparsemem.h 2005-11-02 15:25:42 +11:00
nvram.h powerpc: Remove an extraneous and incorrect declaration of pmac_nvram_init. 2005-11-15 11:17:02 +11:00
of_device.h
ohare.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
oprofile_impl.h
paca.h [PATCH] powerpc: Move various ppc64 files with no ppc32 equivalent to powerpc 2005-11-10 11:24:04 +11:00
page_32.h powerpc: Fix 32-bit compile: PPC_MEMSTART was undeclared 2005-11-14 17:32:50 +11:00
page_64.h [PATCH] powerpc: More hugepage boundary case fixes 2005-11-25 22:12:45 +11:00
page.h [PATCH] powerpc: Merge page.h 2005-11-14 16:33:05 +11:00
param.h
parport.h [PATCH] powerpc: Merge parport.h 2005-10-27 20:50:54 +10:00
pci-bridge.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
pci.h powerpc: Merge pci.h 2005-11-19 20:46:04 +11:00
percpu.h
pgalloc.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
pgtable-4k.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
pgtable-64k.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
pgtable.h powerpc: Trivially merge several headers from asm-ppc64 to asm-powerpc 2005-11-19 20:17:32 +11:00
pmac_feature.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
pmac_low_i2c.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
pmc.h [PATCH] ppc32: fix perf_irq extern on e500 2005-11-09 07:55:52 -08:00
poll.h
posix_types.h
ppc_asm.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
ppc-pci.h powerpc: Merge pci.h 2005-11-19 20:46:04 +11:00
processor.h [PATCH] powerpc: Merge vdso's and add vdso support to 32 bits kernel 2005-11-11 22:25:39 +11:00
prom.h [PATCH] ppc64: SMU partition recovery 2005-11-08 11:17:40 +11:00
pSeries_reconfig.h
ptrace.h powerpc: merge ptrace.h 2005-11-03 16:03:07 +11:00
reg_8xx.h [PATCH] powerpc: Merge cacheflush.h and cache.h 2005-11-10 13:09:22 +11:00
reg.h [PATCH] powerpc: merge code values for identifying platforms 2005-11-10 13:37:51 +11:00
resource.h
rtas.h powerpc: Merge remaining RTAS code 2005-11-03 14:41:19 +11:00
rtc.h powerpc: Make set_rtc_time() return error code from lower-level function 2005-10-22 15:57:55 +10:00
rwsem.h Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
scatterlist.h [PATCH] powerpc: merge scatterlist.h 2005-10-27 16:45:52 +10:00
seccomp.h
sections.h
semaphore.h Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
sembuf.h
serial.h powerpc: Move a bunch of ppc64 headers to include/asm-powerpc 2005-11-14 17:22:01 +11:00
setup.h
shmbuf.h
shmparam.h
sigcontext.h powerpc: merge sigcontext.h 2005-11-03 16:24:25 +11:00
siginfo.h
signal.h [PATCH] powerpc: Merge signal.h 2005-11-10 11:23:46 +11:00
smp.h powerpc: Various UP build fixes 2005-11-07 13:18:13 +11:00
smu.h [PATCH] ppc64: SMU partition recovery 2005-11-08 11:17:40 +11:00
socket.h
sockios.h
sparsemem.h [PATCH] ppc64: Increase sparsemem defaults 2005-11-11 22:21:41 +11:00
spinlock_types.h
spinlock.h powerpc: Merge spinlock.h 2005-11-19 20:50:46 +11:00
sstep.h powerpc: Make single-stepping emulation (mostly) usable on 32-bit 2005-10-28 22:48:08 +10:00
stat.h powerpc: merge stat.h 2005-11-03 16:02:23 +11:00
statfs.h
string.h
synch.h
system.h powerpc: Move some extern declarations from C code into headers 2005-11-10 15:53:40 +11:00
tce.h [PATCH] powerpc: update my email address 2005-11-23 21:23:20 +11:00
termbits.h
termios.h powerpc: use asm-generic/termios.h 2005-11-01 14:36:55 +11:00
thread_info.h [PATCH] ppc64: support 64k pages 2005-11-06 16:56:47 -08:00
time.h merge filename and modify references to iseries/hv_call.h 2005-11-01 16:59:20 +11:00
timex.h
tlb.h powerpc: merge tlb.h 2005-11-04 10:20:27 +11:00
tlbflush.h [PATCH] ppc64: support 64k pages 2005-11-06 16:56:47 -08:00
topology.h [PATCH] powerpc: Fix typo in topology.h 2005-11-18 13:18:11 +11:00
types.h [PATCH] ppc64: make dma_addr_t 64 bits 2005-10-27 16:45:50 +10:00
uaccess.h [PATCH] powerpc: Consolidate asm compatibility macros 2005-11-10 13:10:38 +11:00
ucontext.h powerpc: merge ucontext.h 2005-11-03 16:59:17 +11:00
udbg.h [PATCH] powerpc: Move udbg code to arch/powerpc 2005-11-11 22:23:34 +11:00
unaligned.h
uninorth.h powerpc: Merge various powermac-related header files. 2005-10-20 20:53:39 +10:00
unistd.h Merge ../linux-2.6 by hand 2005-10-31 13:37:12 +11:00
user.h
vdso_datapage.h [PATCH] powerpc: vdso fixes (take #2) 2005-11-14 16:35:58 +11:00
vdso.h [PATCH] powerpc: Make the vDSO functions set error code (#2) 2005-11-16 14:05:11 +11:00
vga.h
vio.h powerpc: Add a shutdown member to vio_driver 2005-10-24 17:40:23 +10:00
xmon.h powerpc: Simplify and clean up the xmon terminal I/O 2005-11-08 22:55:08 +11:00
xor.h