|
@@ -123,7 +123,7 @@ static unsigned char *ftrace_call_replace(unsigned long ip, unsigned long addr)
|
|
|
static atomic_t nmi_running = ATOMIC_INIT(0);
|
|
|
static int mod_code_status; /* holds return value of text write */
|
|
|
static void *mod_code_ip; /* holds the IP to write to */
|
|
|
-static void *mod_code_newcode; /* holds the text to write to the IP */
|
|
|
+static const void *mod_code_newcode; /* holds the text to write to the IP */
|
|
|
|
|
|
static unsigned nmi_wait_count;
|
|
|
static atomic_t nmi_update_count = ATOMIC_INIT(0);
|
|
@@ -225,7 +225,7 @@ within(unsigned long addr, unsigned long start, unsigned long end)
|
|
|
}
|
|
|
|
|
|
static int
|
|
|
-do_ftrace_mod_code(unsigned long ip, void *new_code)
|
|
|
+do_ftrace_mod_code(unsigned long ip, const void *new_code)
|
|
|
{
|
|
|
/*
|
|
|
* On x86_64, kernel text mappings are mapped read-only with
|
|
@@ -266,8 +266,8 @@ static const unsigned char *ftrace_nop_replace(void)
|
|
|
}
|
|
|
|
|
|
static int
|
|
|
-ftrace_modify_code(unsigned long ip, unsigned char *old_code,
|
|
|
- unsigned char *new_code)
|
|
|
+ftrace_modify_code(unsigned long ip, unsigned const char *old_code,
|
|
|
+ unsigned const char *new_code)
|
|
|
{
|
|
|
unsigned char replaced[MCOUNT_INSN_SIZE];
|
|
|
|
|
@@ -301,7 +301,7 @@ ftrace_modify_code(unsigned long ip, unsigned char *old_code,
|
|
|
int ftrace_make_nop(struct module *mod,
|
|
|
struct dyn_ftrace *rec, unsigned long addr)
|
|
|
{
|
|
|
- unsigned char *new, *old;
|
|
|
+ unsigned const char *new, *old;
|
|
|
unsigned long ip = rec->ip;
|
|
|
|
|
|
old = ftrace_call_replace(ip, addr);
|
|
@@ -312,7 +312,7 @@ int ftrace_make_nop(struct module *mod,
|
|
|
|
|
|
int ftrace_make_call(struct dyn_ftrace *rec, unsigned long addr)
|
|
|
{
|
|
|
- unsigned char *new, *old;
|
|
|
+ unsigned const char *new, *old;
|
|
|
unsigned long ip = rec->ip;
|
|
|
|
|
|
old = ftrace_nop_replace();
|