[DynInst_API:] Dyninst Issue with C++11 chrono


Date: Fri, 14 Apr 2017 14:42:20 +0800
From: ååè <zongyao.zhang@xxxxxxxxxxxxxx>
Subject: [DynInst_API:] Dyninst Issue with C++11 chrono
Hi Doctors & experts:
    I found an issue with Dyninst handling C++ 11 chrono library calls:
        If I use chrono system calls in my code, Dyninst cannot work, the error is "segment fault" when I run the application which is instrumented.
        If I remove chrono system calls and the header of chrono, the instrumented application runs ok.
       
    Here is the code and steps to reproduce this problem:
        1, Download the package to a Ubuntu system(14.04LTS)
        2, Open a terminal and set the environment for Dyninst:
            export DYNINST_ROOT=/xxx/xxx/dyninst (the path of installed dyninstï
            export export DYNINSTAPI_RT_LIB=/usr/local/lib/libdyninstAPI_RT.so
        3, go to the directory "build"
        4, execute commands:
                cmake ..
                make
        5, you can see two executables are generated: chrono and without_chrono; you can run these two executalbes without any issue.
        6, now start instrumention by Dyninst:
                ./binst without_chrono out_without_chrono         // "out_without_chrono" is generated.
                ./out_without_chrono     //no error occurs.
               
                ./binst chrono out_chrono    // "out_chrono" is generated.
                run ./out_chrono
                "Segment fault. core dumped".

If you have any idea or answer, please do let me know.

Thanks,
Zongyao

Attachment: 1.png
Description: Binary data

Attachment: 2.png
Description: Binary data

Attachment: 3.png
Description: Binary data

Attachment: Dyninst_issue_with_chrono.tar.gz
Description: Binary data

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