diff options
author | David S. Miller <davem@davemloft.net> | 2015-03-18 19:15:28 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-03-18 19:15:28 -0700 |
commit | 3c08158e0ef5d6a2d4ae21d9eda218c468bc774f (patch) | |
tree | 624811cf9c565d1bc71f2debbac02b8fa1c00eb5 | |
parent | 53eb2516972b8c4628651dfcb926cb9ef8b2864a (diff) | |
download | op-kernel-dev-3c08158e0ef5d6a2d4ae21d9eda218c468bc774f.zip op-kernel-dev-3c08158e0ef5d6a2d4ae21d9eda218c468bc774f.tar.gz |
sparc: Fix /proc/kcore
/proc/kcore investigates the "System RAM" elements in /proc/iomem to
initialize it's memory tables. Therefore we have to register them
before it tries to do so. kcore uses device_initcall() so let's
use arch_initcall() for the registry.
Also we need ARCH_PROC_KCORE_TEXT to get the virtual addresses of
the kernel image correct.
Reported-by: David Ahern <david.ahern@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | arch/sparc/Kconfig | 3 | ||||
-rw-r--r-- | arch/sparc/mm/init_64.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig index 96ac69c..efb00ec 100644 --- a/arch/sparc/Kconfig +++ b/arch/sparc/Kconfig @@ -86,6 +86,9 @@ config ARCH_DEFCONFIG default "arch/sparc/configs/sparc32_defconfig" if SPARC32 default "arch/sparc/configs/sparc64_defconfig" if SPARC64 +config ARCH_PROC_KCORE_TEXT + def_bool y + config IOMMU_HELPER bool default y if SPARC64 diff --git a/arch/sparc/mm/init_64.c b/arch/sparc/mm/init_64.c index 3ea267c..4ca0d6b 100644 --- a/arch/sparc/mm/init_64.c +++ b/arch/sparc/mm/init_64.c @@ -2820,7 +2820,7 @@ static int __init report_memory(void) return 0; } -device_initcall(report_memory); +arch_initcall(report_memory); #ifdef CONFIG_SMP #define do_flush_tlb_kernel_range smp_flush_tlb_kernel_range |