From: "平松雅巳 / HIRAMATU,MASAMI" <masami.hiramatsu.pt@hitachi.com> To: "'David Long'" <dave.long@linaro.org>, Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will.deacon@arm.com>, Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com>, William Cohen <wcohen@redhat.com>, "Pratyush Anand" <panand@redhat.com>, Steve Capper <steve.capper@linaro.org>, "linux-arm-kernel@lists.infradead.org" <linux-arm-kernel@lists.infradead.org>, "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Marc Zyngier <marc.zyngier@arm.com> Cc: "Mark Rutland" <mark.rutland@arm.com>, "Petr Mladek" <pmladek@suse.com>, "Viresh Kumar" <viresh.kumar@linaro.org>, "John Blackwood" <john.blackwood@ccur.com>, "Feng Kan" <fkan@apm.com>, "Zi Shen Lim" <zlim.lnx@gmail.com>, "Dave P Martin" <Dave.Martin@arm.com>, "Yang Shi" <yang.shi@linaro.org>, "Vladimir Murzin" <Vladimir.Murzin@arm.com>, "Kees Cook" <keescook@chromium.org>, "Suzuki K. Poulose" <suzuki.poulose@arm.com>, "Mark Brown" <broonie@kernel.org>, "Alex Bennée" <alex.bennee@linaro.org>, "Ard Biesheuvel" <ard.biesheuvel@linaro.org>, "Greg Kroah-Hartman" <gregkh@linuxfoundation.org>, "Mark Salyzyn" <salyzyn@android.com>, "James Morse" <james.morse@arm.com>, "Christoffer Dall" <christoffer.dall@linaro.org>, "Andrew Morton" <akpm@linux-foundation.org>, "Robin Murphy" <Robin.Murphy@arm.com>, "Jens Wiklander" <jens.wiklander@linaro.org>, "Balamurugan Shanmugam" <bshanmugam@apm.com>, sysp-manager <cti.systems-productivity-manager.ts@hitachi.com> Subject: RE: [PATCH v11 8/9] arm64: Add kernel return probes support (kretprobes) Date: Thu, 17 Mar 2016 12:22:30 +0000 [thread overview] Message-ID: <50399556C9727B4D88A595C8584AAB37B4E50431@GSjpTKYDCembx32.service.hitachi.net> (raw) In-Reply-To: <1457501543-24197-9-git-send-email-dave.long@linaro.org> Hi, >From: Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com> > >The pre-handler of this special 'trampoline' kprobe executes the return >probe handler functions and restores original return address in ELR_EL1. >This way the saved pt_regs still hold the original register context to be >carried back to the probed kernel function. This patch seems not well separated. >diff --git a/arch/arm64/kernel/kprobes.c b/arch/arm64/kernel/kprobes.c >index bd3f233..13d3333 100644 >--- a/arch/arm64/kernel/kprobes.c >+++ b/arch/arm64/kernel/kprobes.c [snip] >+void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, >+ struct pt_regs *regs) >+{ >+ ri->ret_addr = (kprobe_opcode_t *)regs->regs[30]; >+ >+ /* replace return addr (x30) with trampoline */ >+ regs->regs[30] = (long)&kretprobe_trampoline; So, where is the kretprobe_trampoline? It seems that function is defined in other patch. >+} >+ >+int __kprobes arch_trampoline_kprobe(struct kprobe *p) >+{ >+ return 0; > } And what this function is for?? Thank you, > > int __init arch_init_kprobes(void) >-- >2.5.0 > > >_______________________________________________ >linux-arm-kernel mailing list >linux-arm-kernel@lists.infradead.org >http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: masami.hiramatsu.pt@hitachi.com (平松雅巳 / HIRAMATU,MASAMI) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH v11 8/9] arm64: Add kernel return probes support (kretprobes) Date: Thu, 17 Mar 2016 12:22:30 +0000 [thread overview] Message-ID: <50399556C9727B4D88A595C8584AAB37B4E50431@GSjpTKYDCembx32.service.hitachi.net> (raw) In-Reply-To: <1457501543-24197-9-git-send-email-dave.long@linaro.org> Hi, >From: Sandeepa Prabhu <sandeepa.s.prabhu@gmail.com> > >The pre-handler of this special 'trampoline' kprobe executes the return >probe handler functions and restores original return address in ELR_EL1. >This way the saved pt_regs still hold the original register context to be >carried back to the probed kernel function. This patch seems not well separated. >diff --git a/arch/arm64/kernel/kprobes.c b/arch/arm64/kernel/kprobes.c >index bd3f233..13d3333 100644 >--- a/arch/arm64/kernel/kprobes.c >+++ b/arch/arm64/kernel/kprobes.c [snip] >+void __kprobes arch_prepare_kretprobe(struct kretprobe_instance *ri, >+ struct pt_regs *regs) >+{ >+ ri->ret_addr = (kprobe_opcode_t *)regs->regs[30]; >+ >+ /* replace return addr (x30) with trampoline */ >+ regs->regs[30] = (long)&kretprobe_trampoline; So, where is the kretprobe_trampoline? It seems that function is defined in other patch. >+} >+ >+int __kprobes arch_trampoline_kprobe(struct kprobe *p) >+{ >+ return 0; > } And what this function is for?? Thank you, > > int __init arch_init_kprobes(void) >-- >2.5.0 > > >_______________________________________________ >linux-arm-kernel mailing list >linux-arm-kernel at lists.infradead.org >http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2016-03-17 12:22 UTC|newest] Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-03-09 5:32 [PATCH v11 0/9] arm64: Add kernel probes (kprobes) support David Long 2016-03-09 5:32 ` David Long 2016-03-09 5:32 ` [PATCH v11 1/9] arm64: Add HAVE_REGS_AND_STACK_ACCESS_API feature David Long 2016-03-09 5:32 ` David Long 2016-03-11 18:07 ` James Morse 2016-03-11 18:07 ` James Morse 2016-03-18 13:06 ` David Long 2016-03-18 13:06 ` David Long 2016-03-15 11:04 ` Marc Zyngier 2016-03-15 11:04 ` Marc Zyngier 2016-03-21 7:08 ` David Long 2016-03-21 7:08 ` David Long 2016-03-09 5:32 ` [PATCH v11 2/9] arm64: Add more test functions to insn.c David Long 2016-03-09 5:32 ` David Long 2016-03-09 5:32 ` [PATCH v11 3/9] arm64: add copy_to/from_user to kprobes blacklist David Long 2016-03-09 5:32 ` David Long 2016-03-15 18:47 ` James Morse 2016-03-15 18:47 ` James Morse 2016-03-16 5:43 ` Pratyush Anand 2016-03-16 5:43 ` Pratyush Anand 2016-03-16 10:27 ` James Morse 2016-03-16 10:27 ` James Morse 2016-03-17 7:57 ` Pratyush Anand 2016-03-17 7:57 ` Pratyush Anand 2016-03-18 13:29 ` Pratyush Anand 2016-03-18 13:29 ` Pratyush Anand 2016-03-18 14:02 ` James Morse 2016-03-18 14:02 ` James Morse 2016-03-18 14:43 ` Pratyush Anand 2016-03-18 14:43 ` Pratyush Anand 2016-03-18 18:12 ` James Morse 2016-03-18 18:12 ` James Morse 2016-03-21 5:17 ` Pratyush Anand 2016-03-21 5:17 ` Pratyush Anand 2016-03-21 14:52 ` Will Deacon 2016-03-21 14:52 ` Will Deacon 2016-03-22 16:51 ` Pratyush Anand 2016-03-22 16:51 ` Pratyush Anand 2016-03-17 12:04 ` 平松雅巳 / HIRAMATU,MASAMI 2016-03-17 12:04 ` 平松雅巳 / HIRAMATU,MASAMI 2016-03-09 5:32 ` [PATCH v11 4/9] arm64: add conditional instruction simulation support David Long 2016-03-09 5:32 ` David Long 2016-03-13 12:09 ` Marc Zyngier 2016-03-13 12:09 ` Marc Zyngier 2016-03-14 4:04 ` Pratyush Anand 2016-03-14 4:04 ` Pratyush Anand 2016-03-14 7:38 ` Marc Zyngier 2016-03-14 7:38 ` Marc Zyngier 2016-03-21 8:35 ` David Long 2016-03-21 8:35 ` David Long 2016-03-09 5:32 ` [PATCH v11 5/9] arm64: Kprobes with single stepping support David Long 2016-03-09 5:32 ` David Long 2016-04-20 1:29 ` Li Bin 2016-04-20 1:29 ` Li Bin 2016-03-09 5:32 ` [PATCH v11 6/9] arm64: kprobes instruction simulation support David Long 2016-03-09 5:32 ` David Long 2016-03-12 3:56 ` Marc Zyngier 2016-03-12 3:56 ` Marc Zyngier 2016-03-21 9:39 ` David Long 2016-03-21 9:39 ` David Long 2016-03-09 5:32 ` [PATCH v11 7/9] arm64: Add trampoline code for kretprobes David Long 2016-03-09 5:32 ` David Long 2016-03-13 13:52 ` Marc Zyngier 2016-03-13 13:52 ` Marc Zyngier 2016-03-21 13:30 ` David Long 2016-03-21 13:30 ` David Long 2016-03-09 5:32 ` [PATCH v11 8/9] arm64: Add kernel return probes support (kretprobes) David Long 2016-03-09 5:32 ` David Long 2016-03-17 12:22 ` 平松雅巳 / HIRAMATU,MASAMI [this message] 2016-03-17 12:22 ` 平松雅巳 / HIRAMATU,MASAMI 2016-03-17 12:58 ` 平松雅巳 / HIRAMATU,MASAMI 2016-03-17 12:58 ` 平松雅巳 / HIRAMATU,MASAMI 2016-03-21 13:33 ` David Long 2016-03-21 13:33 ` David Long 2016-03-09 5:32 ` [PATCH v11 9/9] kprobes: Add arm64 case in kprobe example module David Long 2016-03-09 5:32 ` David Long
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=50399556C9727B4D88A595C8584AAB37B4E50431@GSjpTKYDCembx32.service.hitachi.net \ --to=masami.hiramatsu.pt@hitachi.com \ --cc=Dave.Martin@arm.com \ --cc=Robin.Murphy@arm.com \ --cc=Vladimir.Murzin@arm.com \ --cc=akpm@linux-foundation.org \ --cc=alex.bennee@linaro.org \ --cc=ard.biesheuvel@linaro.org \ --cc=broonie@kernel.org \ --cc=bshanmugam@apm.com \ --cc=catalin.marinas@arm.com \ --cc=christoffer.dall@linaro.org \ --cc=cti.systems-productivity-manager.ts@hitachi.com \ --cc=dave.long@linaro.org \ --cc=fkan@apm.com \ --cc=gregkh@linuxfoundation.org \ --cc=james.morse@arm.com \ --cc=jens.wiklander@linaro.org \ --cc=john.blackwood@ccur.com \ --cc=keescook@chromium.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-kernel@vger.kernel.org \ --cc=marc.zyngier@arm.com \ --cc=mark.rutland@arm.com \ --cc=panand@redhat.com \ --cc=pmladek@suse.com \ --cc=salyzyn@android.com \ --cc=sandeepa.s.prabhu@gmail.com \ --cc=steve.capper@linaro.org \ --cc=suzuki.poulose@arm.com \ --cc=viresh.kumar@linaro.org \ --cc=wcohen@redhat.com \ --cc=will.deacon@arm.com \ --cc=yang.shi@linaro.org \ --cc=zlim.lnx@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.