public inbox for frysk-bugzilla@sourceware.org
help / color / mirror / Atom feed
From: "mark at klomp dot org" <sourceware-bugzilla@sourceware.org>
To: frysk-bugzilla@sourceware.org
Subject: [Bug general/4762] New: Instruction parser (x86/x86_64) for single stepping out of line framework
Date: Tue, 10 Jul 2007 10:37:00 -0000	[thread overview]
Message-ID: <20070710103748.4762.mark@klomp.org> (raw)

See the following thread:
http://sourceware.org/ml/frysk/2007-q3/msg00018.html

>- Instruction Parser.  The framework is in place and works for the few
> Instructions that are known to the instruction parse, but there are all
> hand coded (see IA32InstructionParser which just handles NOP, INT3, RETQ
> and one JMP variant, the X8664Instruction just delegates to the IA32 for
> now). There don't seem to be libraries available to easily plugin that
> would give us the fixup instructions needed. The best available is the
> kprobes examples from the linux kernel which have as drawback that they
> are coded to be intimately tied to the kernel/C way of doing things and
> only handles instructions found in kernel space. For uprobes this should
> have been extended to handle every instruction that can occur in user
> space, but I haven't seen that work yet (and apparently is only
> available for x86 and no other architecture at this time). Any
> alternatives to look at would be appreciated. Otherwise I need to sit
> down with the various instruction manuals and just code it up by hand.
> (Bonus points for finding something that would not just give us ssol
> fixups but also simulation of instructions when hooked to the registers
> and memory of a Task).
> 

I haven't found a library yet that is suitable for providing fixup information
and determining instruction validity that is usable by Frysk. Without it the
ssol framework is kind of fake and we fall back to reset-stepping breakpoints,
but without stop-the-world, so it keeps being unreliable. The problem with the
current kprobes (and by extension uprobes) approach at the moment is that it
isn't robust in the face of arbitrary user space instructions. So I will
probably end up writing it myself for x86/x86_64 as suggested by Roland in this
systemtap/uprobe message: http://sourceware.org/ml/systemtap/2007-q1/msg00571.html

-- 
           Summary: Instruction parser (x86/x86_64) for single stepping out
                    of line framework
           Product: frysk
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: general
        AssignedTo: frysk-bugzilla at sourceware dot org
        ReportedBy: mark at klomp dot org


http://sourceware.org/bugzilla/show_bug.cgi?id=4762

------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.


             reply	other threads:[~2007-07-10 10:37 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-10 10:37 mark at klomp dot org [this message]
2007-07-10 11:01 ` [Bug general/4762] " mark at klomp dot org

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=20070710103748.4762.mark@klomp.org \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=frysk-bugzilla@sourceware.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).