linux/arch
Benjamin Herrenschmidt 501a297b23 powerpc: Don't Oops when accessing /proc/powerpc/lparcfg without hypervisor
commit f5f6cbb616 upstream.

/proc/powerpc/lparcfg is an ancient facility (though still actively used)
which allows access to some informations relative to the partition when
running underneath a PAPR compliant hypervisor.

It makes no sense on non-pseries machines. However, currently, not only
can it be created on these if the kernel has pseries support, but accessing
it on such a machine will crash due to trying to do hypervisor calls.

In fact, it should also not do HV calls on older pseries that didn't have
an hypervisor either.

Finally, it has the plumbing to be a module but is a "bool" Kconfig option.

This fixes the whole lot by turning it into a machine_device_initcall
that is only created on pseries, and adding the necessary hypervisor
check before calling the H_GET_EM_PARMS hypercall

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2013-09-07 22:09:58 -07:00
..
alpha Removal of GENERIC_GPIO for v3.10 2013-05-09 09:59:16 -07:00
arc ARC: [lib] strchr breakage in Big-endian configuration 2013-08-29 09:47:34 -07:00
arm ARM: 7816/1: CONFIG_KUSER_HELPERS: fix help text 2013-08-29 09:47:36 -07:00
arm64 arm64: perf: fix event validation for software group leaders 2013-08-29 09:47:36 -07:00
avr32 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/linux-avr32 2013-05-22 18:06:57 -07:00
blackfin blackfin updates for Linux 3.10 2013-05-10 07:21:16 -07:00
c6x arch: c6x: mm: include "asm/uaccess.h" to pass compiling 2013-07-21 18:21:29 -07:00
cris - Lots of cleanups from Artem, including deletion of some obsolete drivers 2013-05-09 10:15:46 -07:00
frv Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
h8300 We get rid of the general module prefix confusion with a binary config option, 2013-05-05 10:58:06 -07:00
hexagon Removal of GENERIC_GPIO for v3.10 2013-05-09 09:59:16 -07:00
ia64 Fix TLB gather virtual address range invalidation corner cases 2013-08-20 08:43:05 -07:00
m32r Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-05-01 14:08:52 -07:00
m68k m68k/atari: ARAnyM - Fix NatFeat module support 2013-08-20 08:43:05 -07:00
metag metag: fix mm/hugetlb.c build breakage 2013-06-19 06:23:34 -10:00
microblaze microblaze: fix clone syscall 2013-08-20 08:43:02 -07:00
mips MIPS: Expose missing pci_io{map,unmap} declarations 2013-08-14 22:59:10 -07:00
mn10300 mn10300: Use early_param() to parse "mem=" parameter 2013-06-28 16:53:03 +01:00
openrisc Removal of GENERIC_GPIO for v3.10 2013-05-09 09:59:16 -07:00
parisc parisc: Fix interrupt routing for C8000 serial ports 2013-08-11 18:35:21 -07:00
powerpc powerpc: Don't Oops when accessing /proc/powerpc/lparcfg without hypervisor 2013-09-07 22:09:58 -07:00
s390 KVM: s390: move kvm_guest_enter,exit closer to sie 2013-08-29 09:47:28 -07:00
score score: remove redundant kcore_list entries 2013-05-25 10:27:27 -07:00
sh Fix TLB gather virtual address range invalidation corner cases 2013-08-20 08:43:05 -07:00
sparc sparc32: vm_area_struct access for old Sun SPARCs. 2013-07-28 16:29:41 -07:00
tile tilepro: work around module link error with gcc 4.7 2013-06-15 16:47:47 -04:00
um Fix TLB gather virtual address range invalidation corner cases 2013-08-20 08:43:05 -07:00
unicore32 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal 2013-05-10 09:21:05 -07:00
x86 x86/xen: do not identity map UNUSABLE regions in the machine E820 2013-08-29 09:47:40 -07:00
xtensa xtensa: adjust boot parameters address when INITIALIZE_XTENSA_MMU_INSIDE_VMLINUX is selected 2013-07-25 14:07:42 -07:00
.gitignore
Kconfig microblaze: fix clone syscall 2013-08-20 08:43:02 -07:00