CTF: University project

Chris Johns chrisj at rtems.org
Mon Dec 1 00:26:46 UTC 2014


On 1/12/2014 11:15 am, Dominik Taborsky wrote:
> On Sun, 30 Nov 2014 22:26:18 +0100, Chris Johns <chrisj at rtems.org> wrote:
>
>> On 1/12/2014 12:17 am, Dominik Taborsky wrote:
>>> On Sun, 30 Nov 2014 01:27:06 +0100, Chris Johns <chrisj at rtems.org>
>>> wrote:
>
> ...
>
>>>>
>>>> One area that has plenty of work that needs doing plus ways to
>>>> innovate is trace. Jennifer is adding trace support to the capture
>>>> engine [1] for SMP and I have written a trace linker [2] that has
>>>> support to trace calls using printk. We need to hook all this together
>>>> to make a workable solution for users and we are currently looking at
>>>> the Common Trace Format (CTF) [3] to do this. Generating CTF lets us
>>>> integrate with Babletrace and the Linux Trace Toolkit Viewer (LTTV).
>>>>
>>>> The trace support we are adding attempts to solve some tough user
>>>> requirements from the space community such as instrumenting and
>>>> tracing software at the object level rather than instrumenting at the
>>>> source level. This means you take software that is compiled and
>>>> production ready and link in trace support. The support needs to be
>>>> efficient because it is a target side software only trace.
>>>> Transporting data off target needs to be generic and flexible because
>>>> we have so many different target types with differing hardware.
>>>>
>>>> The work involves adding suitable support to the capture engine to
>>>> extract the trace data and convert it to the CTF format. This may be
>>>> on target or off target depending on the load it places on the target.
>>>> We have lots of pieces of code in place but the code is new and green
>>>> so you would need to work across all parts. We need support for
>>>> generating trigger and trace control maps and this may be linked to
>>>> the CTF format and Babeltrace. There will be work at real-time capture
>>>> level, the trace linking parts on the host, and CTF integrations.
>>>>
>>>> Joel and I met three of the EfficiOS people at GSoC this year and
>>>> discussed this work so we would work with them.
>>>>
>>>
>>> So you're working on the capture engine itself,
>>
>> I am not but Jennifer is. I am not sure what remaining work she has
>> planned. I have been doing little bits with the trace linker and that
>> code needs work to integrate with the capture engine. For example
>> trigger maps plus other controls.
>>
>>> while my job would be to compile the trace captured into a CTF,
>>
>> If you are lucky this might be the case. How we integrate to that code
>> base has not been looked at. Using this format lets us use the nice
>> front end tools that exist. Any changes will require us working with
>> theupstream project.
>
> I'm not planning to change it, after my blitz look at it, it seems very
> comprehensive.
>
>>
>>> possibly transmitting it over to some other machine and decompiling
>>> it again?
>>
>> Yes these tasks exist. The transmission task is complex because of the
>> possible overhead it can create. As Joel said we need to create
>> trigger maps and merge them into the system some how plus there are
>> possible stability issues where the trace overloads the target to be
>> considered.
>
> These are implementation details, right now I worry about design, i.e.
> what am I supposed to do... :)
>
>>
>> The capture engine has 2 parts, the capture part and a command line
>> interface via the RTEMS shell. This work relates to just the capture
>> engine code and not the CLI.
>>
>>>
>>> To make sure, this means implementing some kind of state automata on
>>> both ends, right?
>>>
>>
>> I am not sure this process is that exact.
>
> It seems to me like that, but let's skip that for now.
>
>
> Right now I worry about my goals. I need to give my teacher some kind of
> roadmap what I'll be doing. After that I'll dive into the code.

I understand and this make sense.

>
> I need a milestone to achieve during February and then possibly another
> during June. Can you select one milestone for February using an educated
> guess what could be achieved, perhaps only as alpha version? I just need
> something to aim at.

Yes I think we can do this.

>
> Thanks for your patience with me, Chris! :)
>

No need to thank me, it is us who should thank you for taking an interest.

Let me think about the specifics. I will look into babletrace some more 
to see how we would interface. I am happy to take the specifics of a 
timeline for you off line with Gedare and Joel. How does that sound ?

Chris


More information about the devel mailing list