|
@@ -41,7 +41,9 @@
|
|
|
|
|
|
#define user_mode(regs) (((regs)->sr & 0x40000000)==0)
|
|
|
#define kernel_stack_pointer(_regs) ((unsigned long)(_regs)->regs[15])
|
|
|
-#define GET_USP(regs) ((regs)->regs[15])
|
|
|
+
|
|
|
+#define GET_FP(regs) ((regs)->regs[14])
|
|
|
+#define GET_USP(regs) ((regs)->regs[15])
|
|
|
|
|
|
extern void show_regs(struct pt_regs *);
|
|
|
|
|
@@ -131,7 +133,7 @@ extern void ptrace_triggered(struct perf_event *bp, int nmi,
|
|
|
|
|
|
static inline unsigned long profile_pc(struct pt_regs *regs)
|
|
|
{
|
|
|
- unsigned long pc = instruction_pointer(regs);
|
|
|
+ unsigned long pc = regs->pc;
|
|
|
|
|
|
if (virt_addr_uncached(pc))
|
|
|
return CAC_ADDR(pc);
|