Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
Arnaldo Carvalho de Melowrites: > Em Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao escreveu: >> With ABIv2, we offset 8 bytes into a function to get at the local entry >> point. > > So, I think I can carry the first one via Ingo, etc, what about this > one? > > Is it ok for me to process it? Yes please. > Seems simple enough, has been thru a lot of discussion, but would be > better if it was Reviewed-by the PPC maintainers or else just processed > by them. > > Please advise, I think it's best if you take it with patch 1. I realise they could go separately, but they make more sense together I think. Acked-by: Michael Ellerman cheers
Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
Arnaldo Carvalho de Melo writes: > Em Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao escreveu: >> With ABIv2, we offset 8 bytes into a function to get at the local entry >> point. > > So, I think I can carry the first one via Ingo, etc, what about this > one? > > Is it ok for me to process it? Yes please. > Seems simple enough, has been thru a lot of discussion, but would be > better if it was Reviewed-by the PPC maintainers or else just processed > by them. > > Please advise, I think it's best if you take it with patch 1. I realise they could go separately, but they make more sense together I think. Acked-by: Michael Ellerman cheers
Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
On Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao wrote: > With ABIv2, we offset 8 bytes into a function to get at the local entry > point. > Looks good. > Signed-off-by: Naveen N. RaoAcked-by: Ananth N Mavinakayanahalli
Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
On Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao wrote: > With ABIv2, we offset 8 bytes into a function to get at the local entry > point. > Looks good. > Signed-off-by: Naveen N. Rao Acked-by: Ananth N Mavinakayanahalli
Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
Em Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao escreveu: > With ABIv2, we offset 8 bytes into a function to get at the local entry > point. So, I think I can carry the first one via Ingo, etc, what about this one? Is it ok for me to process it? Seems simple enough, has been thru a lot of discussion, but would be better if it was Reviewed-by the PPC maintainers or else just processed by them. Please advise, - Arnaldo > Signed-off-by: Naveen N. Rao> --- > arch/powerpc/kernel/kprobes.c | 9 + > 1 file changed, 9 insertions(+) > > diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c > index 735ff3d3f77d..e37b76b8b6b2 100644 > --- a/arch/powerpc/kernel/kprobes.c > +++ b/arch/powerpc/kernel/kprobes.c > @@ -131,6 +131,15 @@ static void __kprobes set_current_kprobe(struct kprobe > *p, struct pt_regs *regs, > kcb->kprobe_saved_msr = regs->msr; > } > > +bool arch_function_offset_within_entry(unsigned long offset) > +{ > +#ifdef PPC64_ELF_ABI_v2 > + return offset <= 8; > +#else > + return !offset; > +#endif > +} > + > void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, > struct pt_regs *regs) > { > -- > 2.11.0
Re: [PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
Em Wed, Feb 22, 2017 at 07:23:38PM +0530, Naveen N. Rao escreveu: > With ABIv2, we offset 8 bytes into a function to get at the local entry > point. So, I think I can carry the first one via Ingo, etc, what about this one? Is it ok for me to process it? Seems simple enough, has been thru a lot of discussion, but would be better if it was Reviewed-by the PPC maintainers or else just processed by them. Please advise, - Arnaldo > Signed-off-by: Naveen N. Rao > --- > arch/powerpc/kernel/kprobes.c | 9 + > 1 file changed, 9 insertions(+) > > diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c > index 735ff3d3f77d..e37b76b8b6b2 100644 > --- a/arch/powerpc/kernel/kprobes.c > +++ b/arch/powerpc/kernel/kprobes.c > @@ -131,6 +131,15 @@ static void __kprobes set_current_kprobe(struct kprobe > *p, struct pt_regs *regs, > kcb->kprobe_saved_msr = regs->msr; > } > > +bool arch_function_offset_within_entry(unsigned long offset) > +{ > +#ifdef PPC64_ELF_ABI_v2 > + return offset <= 8; > +#else > + return !offset; > +#endif > +} > + > void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, > struct pt_regs *regs) > { > -- > 2.11.0
[PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
With ABIv2, we offset 8 bytes into a function to get at the local entry point. Signed-off-by: Naveen N. Rao--- arch/powerpc/kernel/kprobes.c | 9 + 1 file changed, 9 insertions(+) diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c index 735ff3d3f77d..e37b76b8b6b2 100644 --- a/arch/powerpc/kernel/kprobes.c +++ b/arch/powerpc/kernel/kprobes.c @@ -131,6 +131,15 @@ static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs, kcb->kprobe_saved_msr = regs->msr; } +bool arch_function_offset_within_entry(unsigned long offset) +{ +#ifdef PPC64_ELF_ABI_v2 + return offset <= 8; +#else + return !offset; +#endif +} + void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs) { -- 2.11.0
[PATCH v2 2/5] powerpc: kretprobes: override default function entry offset
With ABIv2, we offset 8 bytes into a function to get at the local entry point. Signed-off-by: Naveen N. Rao --- arch/powerpc/kernel/kprobes.c | 9 + 1 file changed, 9 insertions(+) diff --git a/arch/powerpc/kernel/kprobes.c b/arch/powerpc/kernel/kprobes.c index 735ff3d3f77d..e37b76b8b6b2 100644 --- a/arch/powerpc/kernel/kprobes.c +++ b/arch/powerpc/kernel/kprobes.c @@ -131,6 +131,15 @@ static void __kprobes set_current_kprobe(struct kprobe *p, struct pt_regs *regs, kcb->kprobe_saved_msr = regs->msr; } +bool arch_function_offset_within_entry(unsigned long offset) +{ +#ifdef PPC64_ELF_ABI_v2 + return offset <= 8; +#else + return !offset; +#endif +} + void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, struct pt_regs *regs) { -- 2.11.0