linux_dsm_epyc7002/arch/powerpc/mm
sukadev@linux.vnet.ibm.com 8a3e3d31d1 powerpc: Punch a hole in /dev/mem for librtas
With CONFIG_STRICT_DEVMEM=y, user space cannot read any part of /dev/mem.
Since this breaks librtas, punch a hole in /dev/mem to allow access to the
rmo_buffer that librtas needs.

Anton Blanchard reported the problem and helped with the fix.

A quick test for this patch:

       # cat /proc/rtas/rmo_buffer
       000000000f190000 10000

       # python -c "print 0x000000000f190000 / 0x10000"
       3865

       # dd if=/dev/mem of=/tmp/foo count=1 bs=64k skip=3865
       1+0 records in
       1+0 records out
       65536 bytes (66 kB) copied, 0.000205235 s, 319 MB/s

       # dd if=/dev/mem of=/tmp/foo
       dd: reading `/dev/mem': Operation not permitted
       0+0 records in
       0+0 records out
       0 bytes (0 B) copied, 0.00022519 s, 0.0 kB/s

Signed-off-by: Sukadev Bhattiprolu <sukadev@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
2011-12-08 14:22:52 +11:00
..
40x_mmu.c memblock: Remove rmo_size, burry it in arch/powerpc where it belongs 2010-08-05 12:56:08 +10:00
44x_mmu.c powerpc/47x: allow kernel to be loaded in higher physical memory 2011-07-12 10:34:24 -04:00
dma-noncoherent.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
fault.c powerpc/icswx: Simple ACOP fault handler 2011-11-25 14:11:28 +11:00
fsl_booke_mmu.c powerpc/fsl-booke: Fix settlbcam for 64-bit 2011-10-12 23:39:10 -05:00
gup.c powerpc: remove superfluous PageTail checks on the pte gup_fast 2011-11-02 16:06:57 -07:00
hash_low_32.S powerpc: Use names rather than numbers for SPRGs (v2) 2009-08-20 10:12:27 +10:00
hash_low_64.S powerpc: Free up some CPU feature bits by moving out MMU-related features 2011-04-27 14:18:52 +10:00
hash_native_64.c KVM: PPC: book3s_hv: Add support for PPC970-family processors 2011-07-12 13:16:59 +03:00
hash_utils_64.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux 2011-11-06 19:44:47 -08:00
highmem.c mm: fix race in kunmap_atomic() 2010-10-27 18:03:05 -07:00
hugetlbpage-book3e.c powerpc/book3e: Change hugetlb preload to take vma argument 2011-12-07 16:26:24 +11:00
hugetlbpage-hash64.c powerpc/mm: Add some debug output when hash insertion fails 2010-07-23 12:56:56 +10:00
hugetlbpage.c powerpc: Add gpages reservation code for 64-bit FSL BOOKE 2011-12-07 16:26:23 +11:00
icswx_pid.c powerpc: Split ICSWX ACOP and PID processing 2011-11-25 14:11:27 +11:00
icswx.c powerpc/icswx: Simple ACOP fault handler 2011-11-25 14:11:28 +11:00
icswx.h powerpc/icswx: Simple ACOP fault handler 2011-11-25 14:11:28 +11:00
init_32.c powerpc: Hugetlb for BookE 2011-09-20 09:19:40 +10:00
init_64.c powerpc: Move free_initmem to common code 2011-06-30 15:28:05 +10:00
Makefile powerpc: Split ICSWX ACOP and PID processing 2011-11-25 14:11:27 +11:00
mem.c powerpc: Punch a hole in /dev/mem for librtas 2011-12-08 14:22:52 +11:00
mmap_64.c powerpc+sparc64/mm: Remove hack in mmap randomize layout 2011-11-28 11:42:09 +11:00
mmu_context_hash32.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
mmu_context_hash64.c powerpc: Split ICSWX ACOP and PID processing 2011-11-25 14:11:27 +11:00
mmu_context_nohash.c powerpc: Hugetlb for BookE 2011-09-20 09:19:40 +10:00
mmu_decl.h powerpc/fsl-booke: Fix setup_initial_memory_limit to not blindly map 2011-10-11 23:30:41 -05:00
numa.c powerpc/numa: NUMA topology support for PowerNV 2011-11-08 14:51:46 +11:00
pgtable_32.c powerpc: Remove ioremap_flags 2011-05-19 14:30:43 +10:00
pgtable_64.c powerpc: add export.h to files making use of EXPORT_SYMBOL 2011-10-31 19:30:37 -04:00
pgtable.c powerpc: Hugetlb for BookE 2011-09-20 09:19:40 +10:00
ppc_mmu_32.c memblock: Remove rmo_size, burry it in arch/powerpc where it belongs 2010-08-05 12:56:08 +10:00
slb_low.S powerpc: Free up some CPU feature bits by moving out MMU-related features 2011-04-27 14:18:52 +10:00
slb.c powerpc: Free up some CPU feature bits by moving out MMU-related features 2011-04-27 14:18:52 +10:00
slice.c powerpc: various straight conversions from module.h --> export.h 2011-10-31 19:30:44 -04:00
stab.c powerpc: Free up some CPU feature bits by moving out MMU-related features 2011-04-27 14:18:52 +10:00
subpage-prot.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
tlb_hash32.c powerpc: include export.h for files using EXPORT_SYMBOL/THIS_MODULE 2011-10-31 19:30:38 -04:00
tlb_hash64.c mm, powerpc: move the RCU page-table freeing into generic code 2011-05-25 08:39:16 -07:00
tlb_low_64e.S powerpc: Add hugepage support to 64-bit tablewalk code for FSL_BOOK3E 2011-12-07 16:26:22 +11:00
tlb_nohash_low.S powerpc/476: Workaround for PLB6 hang 2011-02-02 06:59:02 -05:00
tlb_nohash.c powerpc: hugetlb: modify include usage for FSL BookE code 2011-12-07 16:26:22 +11:00