Git Product home page Git Product logo

Comments (4)

bbiiggppiigg avatar bbiiggppiigg commented on June 19, 2024

Can you elaborate on what you mean by "not correctly insert the instructions" and "for what files", maybe provide the files you want to instrument if possible?

from dyninst.

Ouhznehc avatar Ouhznehc commented on June 19, 2024

Thank you for your response. I've uploaded an example that illustrates the issues I'm encountering to Archive.zip. The archive contains three files: rewrite.log, rewrite_error.log and pbzip2-0.9.4_gcc-m32.bin.

  • rewrite.log lists the instructions I aim to instrument into the binary.
  • rewrite_error.log provides the debug messages generated during the process.
  • pbzip2-0.9.4_gcc-m32.bin is the file to be instrumented.

One specific issue I observed is with the instructions at some address like 0x4014f4, which were not instrumented correctly. Additionally, there is a warning in the logs, but I'm unsure of its implications or how it might be affecting the instrumentation process.

Could you help me understand the warning's significance and suggest any steps to resolve the incorrect instrumentation issue?

from dyninst.

bbiiggppiigg avatar bbiiggppiigg commented on June 19, 2024

@Ouhznehc

So the problem here is Dynisnt concluded that the function main has unresolvable control flow and marked the function as non-instrumentable. (ie. jmp eax at 0x4015f4)

As a result, none of the addresses that you have provided that sits in main got instrumented.
I'll discuss with other maintainers to see if we can add some warning/error to make this easier to spot. (It is pretty hard to spot even for someone who is familiar with the code base).

from dyninst.

Ouhznehc avatar Ouhznehc commented on June 19, 2024

@bbiiggppiigg

Thanks!
I have already found this problem by running my program with DYNINST_DEBUG_RELOC=1, and got the following output:

ADDRSPACE::Relocate called; modified functions reports 1 objects to relocate.
Function main is non-instrumentable, skipping

I'll close this issue, thank you for your help!

from dyninst.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.