GSoC Project | Basic Support for Trace Compass

Sebastian Huber sebastian.huber at embedded-brains.de
Wed Jul 24 12:13:52 UTC 2019


On 24/07/2019 14:07, Ravindra Kumar Meena wrote:
>     You received RTEMS_RECORD_THREAD_SWITCH_OUT two record events before
>     the
>        RTEMS_RECORD_THREAD_SWITCH_IN with the same timestamp. See my
>     comment
>     above. In these two record events all you need for the sched_switch
>     event is contained.
> 
> 
> Have made changes:
> 
> https://github.com/rmeena840/rtems-tools/commit/880eb38c41f66e5ca08429f9ed52a209feed123e
> 
> Have a look.
> 
> Babeltrace output:
> 
> babeltrace . | head
> 
[...]
> [19:16:31.180223920] (+0.000049688) Record_Item sched_switch: { cpu_id = 
> 5 }, { prev_comm = "09010015", prev_tid = 151060501, prev_prio = 0, 
> prev_state = 0, next_comm = "00001ce0", next_tid = 7392, next_prio = 0 }
> 
> Now the prev_* and next_* values are not equal.

Being not equal is necessary but not sufficient.

Your code is too complicated.  Please try to simplify it.  Avoid the 
magic numbers and use the enumerator constants instead.

Why do you use values from RTEMS_RECORD_THREAD_STACK_CURRENT for the 
sched_switch? Do you know what a software thread is?

You only need RTEMS_RECORD_THREAD_SWITCH_IN and 
RTEMS_RECORD_THREAD_SWITCH_OUT.

-- 
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