<div dir="ltr"><br><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr">On 17 April 2018 at 01:43, Cillian O'Donnell <span dir="ltr"><<a href="mailto:cpodonnell8@gmail.com" target="_blank">cpodonnell8@gmail.com</a>></span> wrote:<br></div></div></div></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="gmail-">On 16 April 2018 at 17:46, Joel Sherrill <span dir="ltr"><<a href="mailto:joel@rtems.org" target="_blank">joel@rtems.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="gmail-m_-83190965577567442gmail-">On Mon, Apr 16, 2018 at 2:33 AM, Vijay Kumar Banerjee <span dir="ltr"><<a href="mailto:vijaykumar9597@gmail.com" target="_blank">vijaykumar9597@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">current status :<div>the coverage is running now with rtems-test and generating the report, however, the report doesn't show any data.</div></div></blockquote><div><br></div></span><div>I've been lurking as you have been making progress. Now you have crossed</div><div>into something you probably need some hints at. Some things to check:</div><div><br></div><div>+ Obviously, check output for signs that something didn't happen right.</div><div>Anything from a path wrong, etc. The configuration has to be right to</div><div>point to the source code, object code, executables, etc. </div><div><br></div><div>+ A lot of source code has moved around since last summer. Check</div><div>that it is looking in the right places inside RTEMS.</div><div><br></div><div>+ Does the mechanism to get debug information actually work? Cillian?</div></div></div></div></blockquote><div><br></div></span><div>The covoar debug option just disables the cleaning of the tempfiles to take a look, so it's not as powerful as it might seem :)... I always used gdb here so that's probably the way to go.<br></div><span class="gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>+ There is a utility named trace-converter. Make sure your qemu traces<br></div><div>have information in them.</div><div><br></div><div>+ Cillian probably has guidance on running it just on one test (say ticker)</div><div>so you can see every step.</div><div><br></div><div>+ Check that the executables have symbolic information. "file" should</div><div>show if they are stripped or not.</div><div><br></div><div>I recall covoar has a verbose mode which should be of use.</div><div><br></div><div>Cillian .. do you have instructions on running covoar in gdb?</div></div></div></div></blockquote><div><br></div></span><div>Alright so run rtems-test with --no-clean option to leave the coverage files lying around<br><br>$HOME/development/rtems/test/<wbr>test/rtems-tools/tester/rtems-<wbr>test --rtems-tools=$HOME/<wbr>development/rtems/5 --log=coverage-analysis.log --rtems-bsp=leon3_qemu --coverage --no-clean --rtems-builddir=$HOME/<wbr>development/rtems/leon3 sparc-rtems5/c/leon3/<wbr>testsuites/samples<br><br></div><div>Then run<br><br></div><div>gdb covoar<br><br></div><div>from gdb prompt <br><br>run -S /home/cpod/coverage_test/<wbr>leon3/coverage/score.symcfg -O /home/cpod/coverage_test/<wbr>leon3/test/score -fQEMU -Tsparc-rtems5 -E/home/cpod/development/<wbr>rtems/test/test/vijay/rtems-<wbr>tools/tester/rtems/testing/<wbr>coverage/Explanations.txt -c.cov -eexe -pRTEMS-5 /home/cpod/development/rtems/<wbr>leon3/sparc-rtems5/c/leon3/<wbr>testsuites/samples/base_sp/<wbr>base_sp.exe<br><br></div><div>The options there are ( if you're wondering )<br><br> -c COVERAGEFILE_EXTENSION EXECUTABLE1 ... EXECUTABLE2<br><br> -v                  - verbose output<br> -T TARGET           - architecture target name<br> -f FORMAT           - simulator format <br>(RTEMS, QEMU, TSIM or Skyeye)<br> -E EXPLANATIONS     - file of explanations<br> -s SYMBOLS_FILE     - symbols of interest<br> -S SYMBOL_SET_FILE  - path to symbol_sets.cfg<br> -1 EXECUTABLE       - executable to get symbols from<br> -e EXE_EXTENSION    - suffix for executables<br> -c COVERAGEFILE_EXT - coverage file suffix<br> -g GCNOS_LIST       - list of *.gcno files<br> -p PROJECT_NAME     - name of the project<br> -O Output_Directory - output directory default=.<br> -d debug            - disable cleaning of tempfiles.<br><br></div></div></div></div></blockquote><div><br></div><div>maybe the problem is here . I am getting an error for the -S . Here are the list of options that show up , capital S for symbol_set_file is not one of them .</div><div><br></div><div>Usage: /home/lunatic/development/rtems/5/bin/covoar [-v] -T TARGET -f FORMAT [-E EXPLANATIONS] -e EXE_EXTENSION -c COVERAGEFILE_EXTENSION EXECUTABLE1 ... EXECUTABLE2</div><div><br></div><div>  -v                        - verbose at initialization</div><div>  -T TARGET                 - target name</div><div>  -f FORMAT                 - coverage file format (RTEMS, QEMU, TSIM or Skyeye)</div><div>  -E EXPLANATIONS           - name of file with explanations</div><div>  -s SYMBOLS_FILE           - name of file with symbols of interest</div><div>  -1 EXECUTABLE             - name of executable to get symbols from</div><div>  -e EXE_EXTENSION          - extension of the executables to analyze</div><div>  -c COVERAGEFILE_EXTENSION - extension of the coverage files to analyze</div><div>  -g GCNOS_LIST             - name of file with list of *.gcno files</div><div>  -p PROJECT_NAME           - name of the project</div><div>  -C ConfigurationFileName  - name of configuration file</div><div>  -O Output_Directory       - name of output directory (default=.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div></div><div>Just trying it there, it runs into segmentation fault. So trying to access memory it shouldn't.<br><br>Starting program: /home/cpod/covoar -S /home/cpod/coverage_test/<wbr>leon3/coverage/score.symcfg -O /home/cpod/coverage_test/<wbr>leon3/test/score -fQEMU -Tsparc-rtems5 -E/home/cpod/development/<wbr>rtems/test/test/vijay/rtems-<wbr>tools/tester/rtems/testing/<wbr>coverage/Explanations.txt -c.cov -eexe -pRTEMS-5 /home/cpod/development/rtems/<wbr>leon3/sparc-rtems5/c/leon3/<wbr>testsuites/samples/base_sp/<wbr>base_sp.exe<br>Reading configuration symbol set file: /home/cpod/coverage_test/<wbr>leon3/coverage/score.symcfg<br><br>Program received signal SIGSEGV, Segmentation fault.<br>0x00007ffff7b769bb in std::__cxx11::basic_string<<wbr>char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::<wbr>basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()<br>   from /usr/lib/x86_64-linux-gnu/<wbr>libstdc++.so.6<br><br></div><div>Ahhh feels good to have error messages back.<br><br></div><div>Oh also build covoar with no optimization and you'll have an easier time looking at stuff in gdb<br></div><div><br>cd rtems-tools/tester/covoar<br><br></div><div>vim wscript and change the '-O2' to '-O0' and then build again with waf and use that covoar to with gdb<br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><span class="gmail-m_-83190965577567442gmail-m_-63266058933992612HOEnZb"><font color="#888888"><br clear="all"><div><div class="gmail-m_-83190965577567442gmail-m_-63266058933992612m_1506347161607737147gmail_signature"><div dir="ltr"><div><div dir="ltr">-- vijay</div></div></div></div></div>
</font></span></div></div>
</blockquote></div><br></div></div>
</blockquote></div><br></div></div>
</blockquote></div><br></div></div>