Re: rtems-tld update.

2014-09-21 Thread Chris Johns

On 21/09/2014 10:56 pm, Gedare Bloom wrote:

Thanks Chris. If you have any ideas on useful ways to visualize these
traces, I think it could make a good open project for a student.


There are few possible solutions and I have not really looked at any of 
them. I see the user interface as part 4 of the trace/capture picture 
where part 1 is the trace linker, 2 is the target capture code, 3 is the 
target to host transfer and any post processing and 4 is the user 
interface. There is no implied order on implementing the parts and 
anyone can become involved and help.


The possible options are:

  1. Babletrace and the CTF (http://www.efficios.com/babeltrace)
  2. gdb record replay
  3. dtrace
  4.  any other suggestions ???

The idea of supporting CTF is attractive and I have met Christian from 
EfficiOS and discussed using this tool with RTEMS and he liked the idea.


There is also the task of adding more signature definitions, for example 
POSIX, RTEMS API and libc so there is plenty to do and ways for people 
to help. Documentation would be a be a huge help to me.


If you are lurking on the list and would like to help you can contact me 
directly.


Chris
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


Re: rtems-tld update.

2014-09-21 Thread Gedare Bloom
Thanks Chris. If you have any ideas on useful ways to visualize these
traces, I think it could make a good open project for a student.

-Gedare

On Sun, Sep 21, 2014 at 12:51 AM, Chris Johns  wrote:
> Hello,
>
> I have pushed updates to rtems-tld to rtems-tools.git plus changes to
> examples-v2 to trace into RTEMS. The trace for sparc/sis is attached.
>
> To run build and install the rtems-tools and install to the same location as
> my tools using the same prefix:
>
>  $ git clone git://git.rtems.org/rtems-tools.git rtems-tools
>  $ cd rtems-tools
>  $ waf configure --prefix=$HOME/development/rtems/4.11
>  $ waf build install
>  $ cd ..
>  $ git clone git://git.rtems.org/examples-v2.git examples-v2
>  $ cd examples-v3
>  $ waf configure \
> --rtems=$HOME/development/rtems/bsps/4.11 \
> --rtems-tools=$HOME/development/rtems/4.11
>  $ waf
>
> Note, this assumes I have built and installed sparc/sis with a prefix of
> $HOME/development/rtems/bsps/4.11.
>
> Chris
>
> ___
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
___
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel


rtems-tld update.

2014-09-20 Thread Chris Johns

Hello,

I have pushed updates to rtems-tld to rtems-tools.git plus changes to 
examples-v2 to trace into RTEMS. The trace for sparc/sis is attached.


To run build and install the rtems-tools and install to the same 
location as my tools using the same prefix:


 $ git clone git://git.rtems.org/rtems-tools.git rtems-tools
 $ cd rtems-tools
 $ waf configure --prefix=$HOME/development/rtems/4.11
 $ waf build install
 $ cd ..
 $ git clone git://git.rtems.org/examples-v2.git examples-v2
 $ cd examples-v3
 $ waf configure \
--rtems=$HOME/development/rtems/bsps/4.11 \
--rtems-tools=$HOME/development/rtems/4.11
 $ waf

Note, this assumes I have built and installed sparc/sis with a prefix of 
$HOME/development/rtems/bsps/4.11.


Chris
>>> _Heap_Initialize (0x02003694)
  1] Heap_Control*(4) = 0203FD7C
  2] void*(4) = 02041150
  3] uintptr_t(4) = 65E6
  4] uintptr_t(4) = 0008
<<< _Heap_Initialize (0x02003694)
 rt] uintptr_t(4) = 65D8
>>> _Heap_Initialize (0x02003694)
  1] Heap_Control*(4) = 0203F850
  2] void*(4) = 02047736
  3] uintptr_t(4) = 003B48CA
  4] uintptr_t(4) = 0008
<<< _Heap_Initialize (0x02003694)
 rt] uintptr_t(4) = 003B48C0
>>> _Heap_Allocate_aligned_with_boundary (0x0200384C)
  1] Heap_Control*(4) = 0203FD7C
  2] uintptr_t(4) = 0018
  3] uintptr_t(4) = 
  4] uintptr_t(4) = 
>>> _Heap_Block_allocate (0x02003E78)
  1] Heap_Control*(4) = 0203FD7C
  2] Heap_Block*(4) = 02041150
  3] uintptr_t(4) = 02041158
  4] uintptr_t(4) = 0018
<<< _Heap_Block_allocate (0x02003E78)
 rt] Heap_Block*(4) = 02041150
<<< _Heap_Allocate_aligned_with_boundary (0x0200384C)
 rt] void*(4) = 02041158
>>> _Heap_Allocate_aligned_with_boundary (0x0200384C)
  1] Heap_Control*(4) = 0203FD7C
  2] uintptr_t(4) = 1000
  3] uintptr_t(4) = 
  4] uintptr_t(4) = 
>>> _Heap_Block_allocate (0x02003E78)
  1] Heap_Control*(4) = 0203FD7C
  2] Heap_Block*(4) = 02041170
  3] uintptr_t(4) = 02041178
  4] uintptr_t(4) = 1000
<<< _Heap_Block_allocate (0x02003E78)
 rt] Heap_Block*(4) = 02041170
<<< _Heap_Allocate_aligned_with_boundary (0x0200384C)
 rt] void*(4) = 02041178
>>> _Objects_Initialize_information (0x020013C0)
  1] Objects_Information*(4) = 0203EE24
  2] Objects_APIs(4) = 0001
  3] uint16_t(2) = 0002
  4] uint32_t(4) = 0002
  5] uint16_t(2) = 004C
  6] bool(1) = 00
  7] uint32_t(4) = 
>>> _Objects_Extend_information (0x020015E4)
  1] Objects_Information*(4) = 0203EE24
>>> _Heap_Allocate_aligned_with_boundary (0x0200384C)
  1] Heap_Control*(4) = 0203FD7C
  2] uintptr_t(4) = 0098
  3] uintptr_t(4) = 
  4] uintptr_t(4) = 
>>> _Heap_Block_allocate (0x02003E78)
  1] Heap_Control*(4) = 0203FD7C
  2] Heap_Block*(4) = 02042178
  3] uintptr_t(4) = 02042180
  4] uintptr_t(4) = 0098
<<< _Heap_Block_allocate (0x02003E78)
 rt] Heap_Block*(4) = 02042178
<<< _Heap_Allocate_aligned_with_boundary (0x0200384C)
 rt] void*(4) = 02042180
>>> _Heap_Allocate_aligned_with_boundary (0x0200384C)
  1] Heap_Control*(4) = 0203FD7C
  2] uintptr_t(4) = 001C
  3] uintptr_t(4) = 
  4] uintptr_t(4) = 
>>> _Heap_Block_allocate (0x02003E78)
  1] Heap_Control*(4) = 0203FD7C
  2] Heap_Block*(4) = 02042218
  3] uintptr_t(4) = 02042220
  4] uintptr_t(4) = 001C
<<< _Heap_Block_allocate (0x02003E78)
 rt] Heap_Block*(4) = 02042218
<<< _Heap_Allocate_aligned_with_boundary (0x0200384C)
 rt] void*(4) = 02042220
>>> _Heap_Free (0x02003A04)
  1] Heap_Control*(4) = 0203FD7C
  2] void*(4) = 
<<< _Heap_Free (0x02003A04)
 rt] bool(1) = 01
<<< _Objects_Extend_information (0x020015E4)
<<< _Objects_Initialize_information (0x020013C0)
>>> _Objects_Allocate_unprotected (0x0200171C)
  1] Objects_Information*(4) = 0203EE24
<<< _Objects_Allocate_unprotected (0x0200171C)
 rt] Objects_Control*(4) = 02042180
>>> _CORE_mutex_Initialize (0x02004030)
  1] CORE_mutex_Control*(4) = 02042190
  2] Thread_Control*(4) = 
  3] const CORE_mutex_Attributes*(4) = 023FFED0
  4] bool(1) = 00
<<< _CORE_mutex_Initialize (0x02004030)
 rt] CORE_mutex_Status(4) = 
>>> _Objects_Allocate_unprotected (0x0200171C)
  1] Objects_Information*(4) = 0203EE24
<<< _Objects_Allocate_unprotected (0x0200171C)
 rt] Objects_Control*(4) = 020421CC
>>> _CORE_mutex_Initialize (0x02004030)
  1] CORE_mutex_Control*(4) = 020421DC
  2] Thread_Control*(4) = 
  3] const CORE_mutex_Attributes*(4) = 023FFED0
  4] bool(1) = 00
<<< _CORE_mutex_Initialize (0x02004030)
 rt] CORE_mutex_Status(4) = 
>>> _Thread_Handler_initialization (0x020020E0)
>>> _Objects_Initialize_information (0x020013C0)
  1] Objects_Information*(4) = 0203FE0C
  2] Objects_APIs(4) = 0001
  3] uint16_t(2) = 0001
  4] uint32_t(4) = 0001
  5] uint16_t(2) = 0588
  6] bool(1) = 00
  7] uint32_t(4) = 0008
>>> _Objects_Extend_information (0x020015E4)
  1] Objects_Information*(4) = 0203FE0C
>>> _Heap_Allocate_aligned_with_boundary (0x0200384C)
  1] Heap_Control*(4) = 0203FD7C
  2] uintptr_t(4) =