On Wed, 20 Mar 2019 at 21:20, Vijay Kumar Banerjee <vijaykumar9...@gmail.com> wrote:
> > > > > On Wed, 20 Mar 2019 at 21:11, Sebastian Huber < > sebastian.hu...@embedded-brains.de> wrote: > >> Hello, >> >> thanks for your hints. >> >> On 20/03/2019 16:31, Vijay Kumar Banerjee wrote: >> > >> > >> > >> > >> > On Wed, 20 Mar 2019 at 17:46, Sebastian Huber >> > <sebastian.hu...@embedded-brains.de >> > <mailto:sebastian.hu...@embedded-brains.de>> wrote: >> > >> > Hello, >> > >> > the RTEMS project has a covoar tool: >> > >> > https://git.rtems.org/rtems-tools/tree/tester/covoar >> > >> > I have seen some reports generated by it, but I never used it >> > myself. I >> > have trouble to find out how it works. There is nothing in the >> > documentation: >> > >> > cd rtems-docs >> > grep -ri covoar . >> > >> > There is some documentation available here: >> > >> > >> https://devel.rtems.org/wiki/GCI/Documentation/CoverageAnalysis/Coverage >> > >> > If I invoke the rtems-test like this in the erc32 BSP build >> > directory, I >> > get an error: >> > >> > rtems-test --rtems-bsp=erc32-sis --rtems-tools=/build/rtems/5 >> > --coverage >> > --target=sparc-rtems5 . >> > RTEMS Testing - Tester, 5.0.not_released >> > Command Line: /build/rtems/5/bin/rtems-test --rtems-bsp=erc32-sis >> > --rtems-tools=/build/rtems/5 --coverage --target=sparc-rtems5 . >> > Python: 3.6.5 (default, Mar 31 2018, 19:45:04) [GCC] >> > Host: Linux-4.12.14-lp150.12.48-default-x86_64-with-glibc2.3.4 >> (Linux >> > huber-nb-linux.suse 4.12.14-lp150.12.48-default #1 SMP Tue Feb 12 >> > 14:01:48 UTC 2019 (268f014) x86_64 x86_64) >> > Traceback (most recent call last): >> > File "/build/rtems/5/share/rtems/tester/rt/cmd-test.py", line >> > 42, in >> > <module> >> > test.run(sys.argv[1:], command_path = base) >> > File "/build/rtems/5/share/rtems/tester/rt/test.py", line 300, >> > in run >> > trace = cov_trace) >> > File "/build/rtems/5/share/rtems/tester/rt/coverage.py", line >> > 363, in >> > __init__ >> > self.target = self.macros['target'] >> > File "/build/rtems/5/share/rtems/rtemstoolkit/macros.py", line >> > 181, >> > in __getitem__ >> > raise IndexError('key: %s' % (key)) >> > IndexError: key: target >> > >> > Hi, >> > >> > The covoar needs the .cov files to run which is supposed to be >> > generated by a command like >> > this >> > ==== >> > $HOME/development/rtems/5/bin/sparc-rtems5-sis -nouartrx -r -tlim 600 >> > s -cov >> > >> $HOME/development/rtems/kernel/erc32/sparc-rtems5/c/erc32/testsuites/samples/hello.exe >> > ==== >> > But this runs into a segmentation fault. If my command is right >> > (Please correct me if it isn't) >> > then I think it's because the sis coverage is not supported for erc32. >> :/ >> >> Yes, I get also a segmentation fault. For the leon3 it seems to work: >> >> sparc-rtems5-sis -leon3 -nouartrx -r -tlim 200 s -cov >> ./sparc-rtems5/c/leon3/testsuites/samples/hello.exe >> >> SIS - SPARC/RISCV instruction simulator 2.13, copyright Jiri Gaisler >> 2019 >> Bug-reports to j...@gaisler.se >> >> LEON3 emulation enabled, 1 cpus online, delta 50 clocks >> >> >> >> *** BEGIN OF TEST HELLO WORLD *** >> *** TEST VERSION: 5.0.0.45e418f922af81c9cb8d485c789ba73c95bda813 >> *** TEST STATE: EXPECTED-PASS >> *** TEST BUILD: RTEMS_DEBUG RTEMS_NETWORKING RTEMS_POSIX_API RTEMS_SMP >> *** TEST TOOLS: 7.4.0 20181206 (RTEMS 5, RSB >> c41b9d0df7e5b4a5056ca50c2534380a44e92769, Newlib 3e24fbf6f) >> Hello World >> >> *** END OF TEST HELLO WORLD *** >> >> cpu 0 in error mode (tt = 0x80) >> 165222 400103e0 91d02000 ta 0 >> >> saved code coverage to >> ./sparc-rtems5/c/leon3/testsuites/samples/hello.exe.cov >> >> > >> > about rtems-test, >> > I have attached a patch that adds erc32-sis-cov.ini, this will fix the >> > KeyError you're seeing, >> > but it will return with error 10 as it's trying to run the above >> > command. If you run rtems-test >> > with `--no-clean` and `--coverage` options, you'll have a >> > erc32-sis-symbols.ini file (and the .cov >> > files, when they're supported, like in leon3), which can be used to >> > run covoar directly like >> > below ( but this won't run now as we don't have .cov file ) >> >> I tried to use leon3-sis-cov and I get: >> >> rtems-test --rtems-bsp=leon3-sis-cov --rtems-tools=/build/rtems/5 >> --coverage . >> RTEMS Testing - Tester, 5.0.not_released >> Command Line: /build/rtems/5/bin/rtems-test --rtems-bsp=leon3-sis-cov >> --rtems-tools=/build/rtems/5 --coverage . >> Python: 3.6.5 (default, Mar 31 2018, 19:45:04) [GCC] >> Host: Linux-4.12.14-lp150.12.48-default-x86_64-with-glibc2.3.4 (Linux >> huber-nb-linux.suse 4.12.14-lp150.12.48-default #1 SMP Tue Feb 12 >> 14:01:48 UTC 2019 (268f014) x86_64 x86_64) >> Traceback (most recent call last): >> File "/build/rtems/5/share/rtems/tester/rt/cmd-test.py", line 42, in >> <module> >> test.run(sys.argv[1:], command_path = base) >> File "/build/rtems/5/share/rtems/tester/rt/test.py", line 300, in run >> trace = cov_trace) >> File "/build/rtems/5/share/rtems/tester/rt/coverage.py", line 363, in >> __init__ >> self.target = self.macros['target'] >> File "/build/rtems/5/share/rtems/rtemstoolkit/macros.py", line 181, >> in __getitem__ >> raise IndexError('key: %s' % (key)) >> IndexError: key: target >> >> this works fine for me ... > $HOME/development/rtems/rtems-tools/tester/rtems-test > --rtems-tools=$HOME/development/rtems/5 --rtems-bsp=leon3-qemu-cov > --coverage --log=leon3-test.log > /home/lunatic/development/rtems/kernel/leon3/sparc-rtems5/c/leon3/testsuites/samples/hello.exe > > Sorry about the wrong bsp name, this works fine as well :) $HOME/development/rtems/rtems-tools/tester/rtems-test --rtems-tools=$HOME/development/rtems/5 --rtems-bsp=leon3-sis-cov --coverage --no-clean --log=leon3-test.log /home/lunatic/development/rtems/kernel/leon3/sparc-rtems5/c/leon3/testsuites/samples/hello.exe > The leon3-sis-cov was added recently, so you might need to rebase to > current master. If > it still gives error with python 3. Then you can try `export > RTEMS_PYTHON_OVERRIDE='python2'` > to force it to use python2. > >> > >> > covoar -S >> > >> $HOME/development/rtems/test/rtems-tools/tester/rtems/testing/coverage/erc32-sis-symbols.ini >> >> > \ >> > -O coverage >> > >> -E$HOME/development/rtems/test/rtems-tools/tester/rtems/testing/coverage/Explanations.txt >> >> > \ >> > -p RTEMS-5 sparc-rtems5/c/erc32/testsuites/samples/hello.exe >> >> Do I have to call rtems-test first and then covoar or is it called by >> rtems-test itself? >> >> The rtems-test automatically calls covoar, there's no need to call covoar > separately unless > for debugging purpose. > >> -- >> Sebastian Huber, embedded brains GmbH >> >> Address : Dornierstr. 4, D-82178 Puchheim, Germany >> Phone : +49 89 189 47 41-16 >> Fax : +49 89 189 47 41-09 >> E-Mail : sebastian.hu...@embedded-brains.de >> PGP : Public key available on request. >> >> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG. >> >>
_______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel