[PATCH] Basic Support for Trace Compass

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Jun 7 05:11:49 UTC 2019


On 07/06/2019 05:40, Chris Johns wrote:
>> +Eclipse to analyse and display trace data graphically. Trace data can be gathered from
>> +RTEMS applications via various means, for example:
>> +
>> +- :ref:`RTEMS Trace Linker <TraceLinker>`
>> +- :ref:`RTEMS Capture Engine <CaptureEngine>`
>> +- :ref:`RTEMS Event Recording <EventRecording>`
>> +
>> +Event Recording infrastructure is used to analyse and display some basic information.
>> +The basic information is defined by the Linux kernel trace support (lttng) and may
>> +include CPU Usage, IRQ Analysis(IRQ Statistics, IRQ Table etc.), Linux Kernel(Control Flow,
>> +Resources etc.)
> Linux kernel?

Yes, this is also outlined in the ticket:

https://devel.rtems.org/ticket/3696

"To tackle problem 3. there are two approaches possible. You can extend 
the Trace Compass to work with the trace data provided by RTEMS as is. 
Alternatively, the RTEMS trace data could be converted to Linux kernel 
trace data (lttng) which Trace Compass already understands."

>
>> +
>> +Advanced support for Trace Compass could include dynamic memory traces, stack usage, network packet flow, etc.
> "Could include"? A user manual so it should reflect what we have and what user
> can find.
>
>> +
>> +This scheme of tracing goes through the flow of events described in a subsequent flowchart. Please ser
> ?
>
>> +this requires the environment setup of `rtems-libbsd<https://github.com/RTEMS/rtems-libbsd>`_  and `rtems-tools<https://github.com/RTEMS/rtems-tools>`_:
>> +
>> +Step 1: The Qemu simulator is used to run a LibBSD based application and connect it to a virtual network on host.
>> +This requires to create a TAP virtual Ethernet interface for this.
> Or VDE.
>
>> The Qemu command line is used for board support package, e.g the arm/xilinx_zynq_a9_qemu BSP etc.
> etc ?
>
>> +The host can be connected to target via telnet.
> MacOS does not ship with telnet any more.

You can probably install the telnet client yourself.

I think this section should not contain information about a particular 
BSP setup. It should preset the information involved in tracing in an 
abstract way.

>
>> +
>> +Step 2: On the host computer the command line tool rtems-record can be used to get recorded events from the record server running on the target system.
>> +Recorded events can be sent to a host computer with a very simple record server started by rtems_record_start_server() via a TCP connection.
>> +
>> +Step 3: The trace data received at host from QEMU target is converted into CTF. Since, Babeltrace and Trace Compass are two
>> +compatible software which can read and write CTF. The converted CTF ca be passed to any of these softwares.
>> +
>> +.. figure:: ../../images/user/event-recording-trace.png
>> +  :align: center
>> +  :width: 75%
>>
> Should we have something working before we make any additions to the user manual?

It was actually my idea to add this section right now. My experience is 
that documentation which is planned at the end of the project is never 
written. Maybe we can add a

.. warning::

     This is GSoC work in progress.

to the top of the section.

-- 
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.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the devel mailing list