提交 d782e426 编写于 作者: N Nicolas Pitre 提交者: Russell King

ARM: 8594/1: enable binfmt_flat on systems with an MMU

Now that the generic changes are in place, this can be enabled on ARM
with the use of proper user space accessors in the flat_get_addr_from_rp()
and flat_put_addr_at_rp() handlers as rp actually holds a user space
address.
Signed-off-by: NNicolas Pitre <nico@linaro.org>
Signed-off-by: NRussell King <rmk+kernel@arm.linux.org.uk>
上级 55604b7a
...@@ -8,8 +8,9 @@ ...@@ -8,8 +8,9 @@
#define flat_argvp_envp_on_stack() 1 #define flat_argvp_envp_on_stack() 1
#define flat_old_ram_flag(flags) (flags) #define flat_old_ram_flag(flags) (flags)
#define flat_reloc_valid(reloc, size) ((reloc) <= (size)) #define flat_reloc_valid(reloc, size) ((reloc) <= (size))
#define flat_get_addr_from_rp(rp, relval, flags, persistent) ((void)persistent,get_unaligned(rp)) #define flat_get_addr_from_rp(rp, relval, flags, persistent) \
#define flat_put_addr_at_rp(rp, val, relval) put_unaligned(val,rp) ({ unsigned long __val; __get_user_unaligned(__val, rp); __val; })
#define flat_put_addr_at_rp(rp, val, relval) __put_user_unaligned(val, rp)
#define flat_get_relocate_addr(rel) (rel) #define flat_get_relocate_addr(rel) (rel)
#define flat_set_persistent(relval, p) 0 #define flat_set_persistent(relval, p) 0
......
...@@ -89,7 +89,7 @@ config BINFMT_SCRIPT ...@@ -89,7 +89,7 @@ config BINFMT_SCRIPT
config BINFMT_FLAT config BINFMT_FLAT
bool "Kernel support for flat binaries" bool "Kernel support for flat binaries"
depends on !MMU || M68K depends on !MMU || ARM || M68K
depends on !FRV || BROKEN depends on !FRV || BROKEN
help help
Support uClinux FLAT format binaries. Support uClinux FLAT format binaries.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册