[ltt-dev] lttv unable to execute textDump on MIPS multicore target
David Daney
ddaney at caviumnetworks.com
Mon Feb 14 12:48:39 EST 2011
On 02/14/2011 06:39 AM, Mathieu Desnoyers wrote:
> [ Adding David Daney to CC list, as he may have info on Octeon CPUs with
> non-synchronized TSCs ]
>
> * Naresh Bhat (nareshgbhat at gmail.com) wrote:
>> Hi Mathieu,
>>
>> I have backported the patch and now TSC is enabled in my kernel and also I
>> am able to boot the kernel. But one thing I have observed is between single
>> core and multiple core boot logs is that as following
>>
I missed the patch.
However, I would note that at the time I submitted my MIPS patches to
Mathieu, LTTng seemed to be working well on multi-CPU Octeon systems.
[...]
>
> timex.h:
>
> static inline void write_tsc(u32 val1, u32 val2)
> {
> #ifndef CONFIG_CPU_CAVIUM_OCTEON
> write_c0_count(val1);
> #else
> write_c0_cvmcount(((unsigned long) val2<< 32UL) | (unsigned long) val1);
> #endif
> /* Arrange for an interrupt in a short while */
> write_c0_compare(read_c0_count() + DELAY_INTERRUPT);
> }
>
This is not correct. The main clocksource as well as sched_clock()
which is used by ftrace and the scheduler are all driven by c0_cvmcount.
We take great care to properly synchronize this counter across all
CPUs when they are brought on-line. Anything that sets this counter can
only make the synchronization worse, not better.
David Daney
More information about the lttng-dev
mailing list