Commit bf14e3b9 authored by Vineet Gupta's avatar Vineet Gupta

sysctl: Enable PARISC "unaligned-trap" to be used cross-arch

PARISC defines /proc/sys/kernel/unaligned-trap to runtime toggle
unaligned access emulation.

The exact mechanics of enablig/disabling are still arch specific, we can
make the sysctl usable by other arches.
Signed-off-by: default avatarVineet Gupta <vgupta@synopsys.com>
Acked-by: default avatarHelge Deller <deller@gmx.de>
Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
Cc: Helge Deller <deller@gmx.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Serge Hallyn <serge.hallyn@canonical.com>
parent 4d86dfbb
...@@ -20,6 +20,7 @@ config PARISC ...@@ -20,6 +20,7 @@ config PARISC
select ARCH_HAVE_NMI_SAFE_CMPXCHG select ARCH_HAVE_NMI_SAFE_CMPXCHG
select GENERIC_SMP_IDLE_THREAD select GENERIC_SMP_IDLE_THREAD
select GENERIC_STRNCPY_FROM_USER select GENERIC_STRNCPY_FROM_USER
select SYSCTL_ARCH_UNALIGN_ALLOW
select HAVE_MOD_ARCH_SPECIFIC select HAVE_MOD_ARCH_SPECIFIC
select MODULES_USE_ELF_RELA select MODULES_USE_ELF_RELA
select CLONE_BACKWARDS select CLONE_BACKWARDS
......
...@@ -1232,6 +1232,14 @@ config SYSCTL_EXCEPTION_TRACE ...@@ -1232,6 +1232,14 @@ config SYSCTL_EXCEPTION_TRACE
help help
Enable support for /proc/sys/debug/exception-trace. Enable support for /proc/sys/debug/exception-trace.
config SYSCTL_ARCH_UNALIGN_ALLOW
bool
help
Enable support for /proc/sys/kernel/unaligned-trap
Allows arches to define/use @unaligned_enabled to runtime toggle
the unaligned access emulation.
see arch/parisc/kernel/unaligned.c for reference
config KALLSYMS config KALLSYMS
bool "Load all symbols for debugging/ksymoops" if EXPERT bool "Load all symbols for debugging/ksymoops" if EXPERT
default y default y
......
...@@ -157,6 +157,9 @@ extern int sysctl_tsb_ratio; ...@@ -157,6 +157,9 @@ extern int sysctl_tsb_ratio;
#ifdef __hppa__ #ifdef __hppa__
extern int pwrsw_enabled; extern int pwrsw_enabled;
#endif
#ifdef CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW
extern int unaligned_enabled; extern int unaligned_enabled;
#endif #endif
...@@ -545,6 +548,8 @@ static struct ctl_table kern_table[] = { ...@@ -545,6 +548,8 @@ static struct ctl_table kern_table[] = {
.mode = 0644, .mode = 0644,
.proc_handler = proc_dointvec, .proc_handler = proc_dointvec,
}, },
#endif
#ifdef CONFIG_SYSCTL_ARCH_UNALIGN_ALLOW
{ {
.procname = "unaligned-trap", .procname = "unaligned-trap",
.data = &unaligned_enabled, .data = &unaligned_enabled,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment