projects
/
firefly-linux-kernel-4.4.55.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
[firefly-linux-kernel-4.4.55.git]
/
arch
/
arm64
/
kernel
/
hw_breakpoint.c
diff --git
a/arch/arm64/kernel/hw_breakpoint.c
b/arch/arm64/kernel/hw_breakpoint.c
index b45c95d34b8323e74992e0a4a56e6da0e1257c60..367a954f9937979c574a805bab2e3cbad706d202 100644
(file)
--- a/
arch/arm64/kernel/hw_breakpoint.c
+++ b/
arch/arm64/kernel/hw_breakpoint.c
@@
-24,6
+24,7
@@
#include <linux/cpu_pm.h>
#include <linux/errno.h>
#include <linux/hw_breakpoint.h>
#include <linux/cpu_pm.h>
#include <linux/errno.h>
#include <linux/hw_breakpoint.h>
+#include <linux/kprobes.h>
#include <linux/perf_event.h>
#include <linux/ptrace.h>
#include <linux/smp.h>
#include <linux/perf_event.h>
#include <linux/ptrace.h>
#include <linux/smp.h>
@@
-127,6
+128,7
@@
static u64 read_wb_reg(int reg, int n)
return val;
}
return val;
}
+NOKPROBE_SYMBOL(read_wb_reg);
static void write_wb_reg(int reg, int n, u64 val)
{
static void write_wb_reg(int reg, int n, u64 val)
{
@@
-140,6
+142,7
@@
static void write_wb_reg(int reg, int n, u64 val)
}
isb();
}
}
isb();
}
+NOKPROBE_SYMBOL(write_wb_reg);
/*
* Convert a breakpoint privilege level to the corresponding exception
/*
* Convert a breakpoint privilege level to the corresponding exception
@@
-157,6
+160,7
@@
static enum dbg_active_el debug_exception_level(int privilege)
return -EINVAL;
}
}
return -EINVAL;
}
}
+NOKPROBE_SYMBOL(debug_exception_level);
enum hw_breakpoint_ops {
HW_BREAKPOINT_INSTALL,
enum hw_breakpoint_ops {
HW_BREAKPOINT_INSTALL,
@@
-575,6
+579,7
@@
static void toggle_bp_registers(int reg, enum dbg_active_el el, int enable)
write_wb_reg(reg, i, ctrl);
}
}
write_wb_reg(reg, i, ctrl);
}
}
+NOKPROBE_SYMBOL(toggle_bp_registers);
/*
* Debug exception handlers.
/*
* Debug exception handlers.
@@
-654,6
+659,7
@@
unlock:
return 0;
}
return 0;
}
+NOKPROBE_SYMBOL(breakpoint_handler);
static int watchpoint_handler(unsigned long addr, unsigned int esr,
struct pt_regs *regs)
static int watchpoint_handler(unsigned long addr, unsigned int esr,
struct pt_regs *regs)
@@
-756,6
+762,7
@@
unlock:
return 0;
}
return 0;
}
+NOKPROBE_SYMBOL(watchpoint_handler);
/*
* Handle single-step exception.
/*
* Handle single-step exception.
@@
-813,6
+820,7
@@
int reinstall_suspended_bps(struct pt_regs *regs)
return !handled_exception;
}
return !handled_exception;
}
+NOKPROBE_SYMBOL(reinstall_suspended_bps);
/*
* Context-switcher for restoring suspended breakpoints.
/*
* Context-switcher for restoring suspended breakpoints.