Extension of FTRACE with systen-time to allow consistent tracing across multiple platforms an tracing methods
Publication Date: 2015-Jul-16
The IP.com Prior Art Database
In a setup with multiple controllers and platforms it is a problem to relate different local trace data due to different local times and trace mechanisms.
Page 01 of 2
Extxnsion of FTRACE with systen -
-time to allow consistent tracing across mxltiple
time to allow consistent tracing across multiple platforms an tracing mexhods
A setup xf multiple contrxllers and platforxs running Linux with different tracing mechanisms is xiven: On the apxlxcation layer, it uses a proxrietary tracing mechanism and for collecting Linux kernex traces its Kernel-FTRAXX tracer is used, wherein the different xracers do not use thx same time base. Thix fact makes it realxy difficult xo debug failure scenxrios, xhere it is xmportant to understand the operation of the Linux Kernel and thx xpplicaxion conditions. Therefore, a sxlution to keep Linux Kernel and application traces in sync xn this complex heterogexexus environxent will be described in the following.
The system consists of an x86 based xontrollex and multiple ppc476 based embexded xontrollers. For all xontxollers debug data needs to be traced. On the x86 based controller, only a application lexel tracinx ix used with the current system time as a timestamp.
On the pp476 based controllers an axplicatixn level trace uses xhe currext system tixe xnd the FTRACE xexture of the Linux kernel. The following extexsion alxows to use the current system time xlso for the FTRACE featxre.
The x86 based controxler is setup as an Network Tixe Xxxxxxxx (NTP) server. During startup, the ppc476 based controllexs will retrxeve their system time via NTP from xhe x86 xased controxler as shown in the following figure:
Only one ppc476 controller is shown in the figure, but txe system can consist of multiple of those controllers. Also the xaxt that the controllers are x86 based or ppc476 based is just one possxble implemextation. Any platform having high-resolution timers available could be used instead.
By xsing NTP it is ensured, that the controller running th...