linux/arch/powerpc
Dave Kleikamp ef3d3246a0 powerpc/mm: Add Strong Access Ordering support
Allow an application to enable Strong Access Ordering on specific pages of
memory on Power 7 hardware. Currently, power has a weaker memory model than
x86. Implementing a stronger memory model allows an emulator to more
efficiently translate x86 code into power code, resulting in faster code
execution.

On Power 7 hardware, storing 0b1110 in the WIMG bits of the hpte enables
strong access ordering mode for the memory page.  This patchset allows a
user to specify which pages are thus enabled by passing a new protection
bit through mmap() and mprotect().  I have defined PROT_SAO to be 0x10.

Signed-off-by: Dave Kleikamp <shaggy@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2008-07-09 16:30:45 +10:00
..
boot powerpc/bootwrapper: Pad .dtb by default 2008-07-01 11:28:53 +10:00
configs Merge branch 'linux-2.6' 2008-06-30 10:16:50 +10:00
kernel powerpc/mm: Add Strong Access Ordering support 2008-07-09 16:30:45 +10:00
kvm KVM: ppc: Report bad GFNs 2008-06-06 21:22:41 +03:00
lib powerpc: Fixup lwsync at runtime 2008-07-03 16:58:10 +10:00
math-emu powerpc: Add macros to access floating point registers in thread_struct. 2008-07-01 11:28:43 +10:00
mm powerpc/pseries: Update numa association of hotplug memory add for drconf memory 2008-07-03 16:58:18 +10:00
oprofile Merge branch 'linux-2.6' 2008-04-14 21:11:02 +10:00
platforms powerpc/cell: cell_dma_dev_setup_iommu() return the iommu table 2008-07-09 16:30:43 +10:00
sysdev Merge branch 'next' of master.kernel.org:/pub/scm/linux/kernel/git/jwboyer/powerpc-4xx 2008-06-30 09:57:05 +10:00
xmon Merge branch 'linux-2.6' 2008-06-30 10:16:50 +10:00
.gitignore [POWERPC] Add files build to .gitignore 2006-12-04 20:41:29 +11:00
Kconfig powerpc/dma: implement new dma_*map*_attrs() interfaces 2008-07-09 16:30:43 +10:00
Kconfig.debug powerpc: Add self-tests of the feature fixup code 2008-07-01 11:28:30 +10:00
Makefile powerpc: Get rid of CROSS32{AS,LD,OBJCOPY} 2008-06-30 22:30:39 +10:00