Skip to content

Commit

Permalink
sparc64: separate extable_64.h, switch elf_64.h to it
Browse files Browse the repository at this point in the history
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
  • Loading branch information
Al Viro committed Oct 5, 2016
1 parent 88dd4a7 commit c99d2ab
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 18 deletions.
2 changes: 1 addition & 1 deletion arch/sparc/include/asm/elf_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

#include <asm/ptrace.h>
#include <asm/processor.h>
#include <asm/uaccess.h>
#include <asm/extable_64.h>
#include <asm/spitfire.h>

/*
Expand Down
20 changes: 20 additions & 0 deletions arch/sparc/include/asm/extable_64.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
#ifndef __ASM_EXTABLE64_H
#define __ASM_EXTABLE64_H
/*
* The exception table consists of pairs of addresses: the first is the
* address of an instruction that is allowed to fault, and the second is
* the address at which the program should continue. No registers are
* modified, so it is entirely up to the continuation code to figure out
* what to do.
*
* All the routines below use bits of fixup code that are out of line
* with the main instruction path. This means when everything is well,
* we don't even have to jump over them. Further, they do not intrude
* on our cache or tlb entries.
*/

struct exception_table_entry {
unsigned int insn, fixup;
};

#endif
18 changes: 1 addition & 17 deletions arch/sparc/include/asm/uaccess_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
#include <asm/asi.h>
#include <asm/spitfire.h>
#include <asm-generic/uaccess-unaligned.h>
#include <asm/extable_64.h>
#endif

#ifndef __ASSEMBLY__
Expand Down Expand Up @@ -81,23 +82,6 @@ static inline int access_ok(int type, const void __user * addr, unsigned long si
return 1;
}

/*
* The exception table consists of pairs of addresses: the first is the
* address of an instruction that is allowed to fault, and the second is
* the address at which the program should continue. No registers are
* modified, so it is entirely up to the continuation code to figure out
* what to do.
*
* All the routines below use bits of fixup code that are out of line
* with the main instruction path. This means when everything is well,
* we don't even have to jump over them. Further, they do not intrude
* on our cache or tlb entries.
*/

struct exception_table_entry {
unsigned int insn, fixup;
};

void __ret_efault(void);
void __retl_efault(void);

Expand Down

0 comments on commit c99d2ab

Please sign in to comment.