Skip to content

Commit

Permalink
m68knommu: add definitions to support elf_fdpic program loader
Browse files Browse the repository at this point in the history
Add a few required defines to support using the binfmt_elf_fdpic
loader on the m68k architecture. The values are defined to be consistent
with those used on arm and sh which support this too.

The most important m68k specific change is the register initialization.
The pt_reg structure only contains a subset of the architecture general
registers, so we are more limited than to be expected on what can be used.

Signed-off-by: Greg Ungerer <gerg@linux-m68k.org>
  • Loading branch information
Greg Ungerer committed May 16, 2022
1 parent bd53e44 commit 67b660b
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 0 deletions.
9 changes: 9 additions & 0 deletions arch/m68k/include/asm/elf.h
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,13 @@ typedef struct user_m68kfp_struct elf_fpregset_t;
is actually used on ASV. */
#define ELF_PLAT_INIT(_r, load_addr) _r->a1 = 0

#define ELF_FDPIC_PLAT_INIT(_r, _exec_map_addr, _interp_map_addr, dynamic_addr) \
do { \
(_r)->d3 = _exec_map_addr; \
(_r)->d4 = _interp_map_addr; \
(_r)->d5 = dynamic_addr; \
} while(0)

#if defined(CONFIG_SUN3) || defined(CONFIG_COLDFIRE)
#define ELF_EXEC_PAGESIZE 8192
#else
Expand Down Expand Up @@ -114,4 +121,6 @@ typedef struct user_m68kfp_struct elf_fpregset_t;

#define ELF_PLATFORM (NULL)

#define ELF_FDPIC_CORE_EFLAGS 0

#endif
5 changes: 5 additions & 0 deletions arch/m68k/include/uapi/asm/ptrace.h
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,12 @@ struct switch_stack {

#define PTRACE_GET_THREAD_AREA 25

#define PTRACE_GETFDPIC 31

#define PTRACE_SINGLEBLOCK 33 /* resume execution until next branch */

#define PTRACE_GETFDPIC_EXEC 0
#define PTRACE_GETFDPIC_INTERP 1

#endif /* __ASSEMBLY__ */
#endif /* _UAPI_M68K_PTRACE_H */

0 comments on commit 67b660b

Please sign in to comment.