On Wed, Jun 14, 2017 at 09:24:39AM +0200, Jiri Slaby wrote:
> On 06/01/2017, 07:44 AM, Josh Poimboeuf wrote:
> ...
> > --- a/arch/x86/kernel/kprobes/opt.c
> > +++ b/arch/x86/kernel/kprobes/opt.c
> > @@ -28,6 +28,7 @@
> >  #include <linux/kdebug.h>
> >  #include <linux/kallsyms.h>
> >  #include <linux/ftrace.h>
> > +#include <linux/frame.h>
> >  
> >  #include <asm/text-patching.h>
> >  #include <asm/cacheflush.h>
> > @@ -94,6 +95,7 @@ static void synthesize_set_arg1(kprobe_opcode_t *addr, 
> > unsigned long val)
> >  }
> >  
> >  asm (
> > +                   "optprobe_template_func:\n"
> 
> Why do you add another symbol here? What's wrong with
> optprobe_template_entry?

I tried to do that, but the STACK_FRAME_NON_STANDARD macro needs a
function, and optprobe_template_entry is defined elsewhere as a data
symbol with a type of kprobe_opcode_t.  So I had to wrap the asm code
inside a function.

-- 
Josh

Reply via email to