Re: [DynInst_API:] StackMod


Date: Fri, 08 Jan 2016 23:20:16 +0000
From: Matt Morehouse <mm@xxxxxxxxxxx>
Subject: Re: [DynInst_API:] StackMod
Hi Marc,

Yes, StackMod is only implemented for x86 and x86-64 in rewrite mode.  I'm not sure why only rewrite mode is supported, perhaps someone else could comment?

But the major challenge we're facing is that it is often difficult to obtain a complete-enough understanding of how the stack is accessed to safely modify the stack.  One reason for this is that it's frequently tough to determine whether a memory store/load accesses the stack or not.  And even if we know a stack access is occurring, it is often difficult to determine where on the stack is being accessed.  As a result, our current StackMod implementation is unable to modify ~50% of otherwise instrumentable functions.  Our current efforts are focused on reducing this percentage.

Specific approaches we've considered (and started working on) include:
  *  Reducing unnecessary conservativeness in our StackAnalysis procedure
  *  Adding memory-tracking to StackAnalysis
  *  Limited interprocedural analysis to track stack pointers that are passed between functions

- Matt
________________________________________
From: Dyninst-api <dyninst-api-bounces@xxxxxxxxxxx> on behalf of Marc Brünink <marc@xxxxxxxxx>
Sent: Thursday, January 07, 2016 9:52 PM
To: dyninst-api@xxxxxxxxxxx
Subject: [DynInst_API:] StackMod

Dear all,

I never used StackMod nor did I look at the code so far.
If I remember correctly Stackmod only works for x86* in rewriting mode.

I was wondering why it is limited to rewriting, what are the
limitations, remaining open challenges etc.

Marc


_______________________________________________
Dyninst-api mailing list
Dyninst-api@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

[← Prev in Thread] Current Thread [Next in Thread→]