All of lore.kernel.org
 help / color / mirror / Atom feed
From: will.deacon@arm.com (Will Deacon)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 1/5] arm64: Kprobes with single stepping support
Date: Wed, 26 Nov 2014 10:09:19 +0000	[thread overview]
Message-ID: <20141126100919.GA9040@arm.com> (raw)
In-Reply-To: <54757734.4060301@linaro.org>

On Wed, Nov 26, 2014 at 06:46:12AM +0000, David Long wrote:
> On 11/19/14 09:55, David Long wrote:
> > On 11/19/14 06:25, Will Deacon wrote:
> >> I was thinking of the magic hex numbers in the kprobes decode tables,
> >> which
> >> seem to correspond directly to the instruction classes described in
> >> insn.c
> >>
> >> Keeping the actual emulation code separate makes sense.
> >>
> > Of course that follows the model of the much more complex arm32
> > kprobes/uprobes decoding.  I can have a go at replacing it with insn.c
> > calls.
> 
> While the existing aarch64_get_insn_class() function in insn.c is 
> somewhat useful here what is really needed is a function that identifies 
> if an instruction uses the pc (branch, load literal, load address). 
> Such instructions cannot be arbitrarily moved around in isolation, and 
> do not fall neatly into the existing "class"es.  I've written a simple 
> aarch64_insn_uses_pc() function to add to insn.c but I'd like to hear 
> agreement that this is a good approach before sending out the patch. 
> Thoughts?

I'm perfectly happy with extending insn.c with extra helpers if they're
useful to you.

Will

WARNING: multiple messages have this Message-ID (diff)
From: Will Deacon <will.deacon@arm.com>
To: David Long <dave.long@linaro.org>
Cc: Sandeepa Prabhu <sandeepa.prabhu@linaro.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>,
	Russell King <linux@arm.linux.org.uk>,
	William Cohen <wcohen@redhat.com>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	"Jon Medhurst (Tixy)" <tixy@linaro.org>,
	Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>,
	Ananth N Mavinakayanahalli <ananth@in.ibm.com>,
	Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>,
	"davem@davemloft.net" <davem@davemloft.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 1/5] arm64: Kprobes with single stepping support
Date: Wed, 26 Nov 2014 10:09:19 +0000	[thread overview]
Message-ID: <20141126100919.GA9040@arm.com> (raw)
In-Reply-To: <54757734.4060301@linaro.org>

On Wed, Nov 26, 2014 at 06:46:12AM +0000, David Long wrote:
> On 11/19/14 09:55, David Long wrote:
> > On 11/19/14 06:25, Will Deacon wrote:
> >> I was thinking of the magic hex numbers in the kprobes decode tables,
> >> which
> >> seem to correspond directly to the instruction classes described in
> >> insn.c
> >>
> >> Keeping the actual emulation code separate makes sense.
> >>
> > Of course that follows the model of the much more complex arm32
> > kprobes/uprobes decoding.  I can have a go at replacing it with insn.c
> > calls.
> 
> While the existing aarch64_get_insn_class() function in insn.c is 
> somewhat useful here what is really needed is a function that identifies 
> if an instruction uses the pc (branch, load literal, load address). 
> Such instructions cannot be arbitrarily moved around in isolation, and 
> do not fall neatly into the existing "class"es.  I've written a simple 
> aarch64_insn_uses_pc() function to add to insn.c but I'd like to hear 
> agreement that this is a good approach before sending out the patch. 
> Thoughts?

I'm perfectly happy with extending insn.c with extra helpers if they're
useful to you.

Will

  reply	other threads:[~2014-11-26 10:09 UTC|newest]

Thread overview: 104+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-18  6:32 [PATCH v3 0/5] ARM64: Add kernel probes(Kprobes) support David Long
2014-11-18  6:32 ` David Long
2014-11-18  6:32 ` [PATCH v3 1/5] arm64: Kprobes with single stepping support David Long
2014-11-18  6:32   ` David Long
2014-11-18 13:28   ` Jon Medhurst (Tixy)
2014-11-18 13:28     ` Jon Medhurst (Tixy)
2014-11-21  4:28     ` David Long
2014-11-21  4:28       ` David Long
2014-11-18 14:38   ` William Cohen
2014-11-18 14:38     ` William Cohen
2014-11-18 14:39   ` William Cohen
2014-11-18 14:39     ` William Cohen
2014-11-18 14:56   ` Will Deacon
2014-11-18 14:56     ` Will Deacon
2014-11-19 11:21     ` Sandeepa Prabhu
2014-11-19 11:21       ` Sandeepa Prabhu
2014-11-19 11:25       ` Will Deacon
2014-11-19 11:25         ` Will Deacon
2014-11-19 14:55         ` David Long
2014-11-19 14:55           ` David Long
2014-11-20  5:10           ` Sandeepa Prabhu
2014-11-20  5:10             ` Sandeepa Prabhu
2014-11-26  6:46           ` David Long
2014-11-26  6:46             ` David Long
2014-11-26 10:09             ` Will Deacon [this message]
2014-11-26 10:09               ` Will Deacon
2014-12-22 10:10   ` Pratyush Anand
2014-12-22 10:10     ` Pratyush Anand
2014-11-18  6:32 ` [PATCH v3 2/5] arm64: Kprobes instruction simulation support David Long
2014-11-18  6:32   ` David Long
2014-11-18 14:43   ` William Cohen
2014-11-18 14:43     ` William Cohen
2014-11-18  6:32 ` [PATCH v3 3/5] arm64: Add kernel return probes support(kretprobes) David Long
2014-11-18  6:32   ` David Long
2014-11-18 14:50   ` William Cohen
2014-11-18 14:50     ` William Cohen
2014-11-18  6:32 ` [PATCH v3 4/5] kprobes: Add arm64 case in kprobe example module David Long
2014-11-18  6:32   ` David Long
2014-11-18  6:32 ` [PATCH v3 5/5] arm64: Add HAVE_REGS_AND_STACK_ACCESS_API feature David Long
2014-11-18  6:32   ` David Long
2014-11-18 14:52   ` Will Deacon
2014-11-18 14:52     ` Will Deacon
2014-11-20  7:20     ` Masami Hiramatsu
2014-11-20  7:20       ` Masami Hiramatsu
2014-11-21  6:16     ` David Long
2014-11-21  6:16       ` David Long
2014-11-20 15:02 ` [PATCH v3 0/5] ARM64: Add kernel probes(Kprobes) support Steve Capper
2014-11-20 15:02   ` Steve Capper
2014-11-26  8:33   ` Masami Hiramatsu
2014-11-26  8:33     ` Masami Hiramatsu
2014-11-26 10:03     ` Steve Capper
2014-11-26 10:03       ` Steve Capper
2014-11-26 17:46       ` David Long
2014-11-26 17:46         ` David Long
2014-11-26 18:59         ` Steve Capper
2014-11-26 18:59           ` Steve Capper
2014-11-27  6:07           ` Masami Hiramatsu
2014-11-27  6:07             ` Masami Hiramatsu
2014-11-28 16:01             ` Steve Capper
2014-11-28 16:01               ` Steve Capper
2014-12-01  9:37               ` Masami Hiramatsu
2014-12-01  9:37                 ` Re: " Masami Hiramatsu
2014-12-02 19:27                 ` William Cohen
2014-12-02 19:27                   ` William Cohen
2014-12-02 20:00                   ` William Cohen
2014-12-02 20:00                     ` William Cohen
2014-12-03  3:36                   ` Masami Hiramatsu
2014-12-03  3:36                     ` Masami Hiramatsu
2014-12-03 14:54                 ` William Cohen
2014-12-03 14:54                   ` William Cohen
2014-12-03 22:54                   ` David Long
2014-12-03 22:54                     ` David Long
2014-12-04  0:02                     ` David Long
2014-12-04  0:02                       ` David Long
2014-12-04  1:16                     ` William Cohen
2014-12-04  1:16                       ` William Cohen
2014-12-04  2:48                       ` David Long
2014-12-04  2:48                         ` David Long
2014-12-04 10:21                         ` Steve Capper
2014-12-04 10:21                           ` Steve Capper
2014-12-04 10:43                           ` Masami Hiramatsu
2014-12-04 10:43                             ` Masami Hiramatsu
2014-12-04 11:29                             ` Steve Capper
2014-12-04 11:29                               ` Steve Capper
2014-12-04 11:53                               ` Masami Hiramatsu
2014-12-04 11:53                                 ` Masami Hiramatsu
2014-12-09 13:33                                 ` Steve Capper
2014-12-09 13:33                                   ` Steve Capper
2014-12-09 14:27                                   ` David Long
2014-12-09 14:27                                     ` David Long
2014-12-10 16:38                                     ` Steve Capper
2014-12-10 16:38                                       ` Steve Capper
2014-12-12 22:42                                       ` David Long
2014-12-12 22:42                                         ` David Long
2014-12-12 23:10                                         ` Steve Capper
2014-12-12 23:10                                           ` Steve Capper
2014-12-15  5:58                                           ` Masami Hiramatsu
2014-12-15  5:58                                             ` Masami Hiramatsu
2014-12-15  6:29                                           ` David Long
2014-12-15  6:29                                             ` David Long
2014-12-05  5:08                       ` William Cohen
2014-12-05  5:08                         ` William Cohen
2014-11-27  5:13       ` Masami Hiramatsu
2014-11-27  5:13         ` Masami Hiramatsu

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=20141126100919.GA9040@arm.com \
    --to=will.deacon@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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: link
Be 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.