[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <45745664.5040404@ru.mvista.com>
Date: Mon, 04 Dec 2006 20:09:56 +0300
From: Sergei Shtylyov <sshtylyov@...mvista.com>
To: Ingo Molnar <mingo@...e.hu>
Cc: linuxppc-dev@...abs.org, linux-kernel@...r.kernel.org,
dwalker@...sta.com, khilman@...sta.com
Subject: Re: [PATCH] 2.6.18-rt7: fix more issues with 32-bit cycles_t in latency_trace.c
(take 3)
Hello.
Ingo Molnar wrote:
>>> /* check for buggy clocks, handling wrap for 32-bit clocks */
>>>- if (TYPE_EQUAL(cycles_t, unsigned long)) {
>>>+ if (TYPE_EQUAL(cycle_t, unsigned long)) {
>>> if (time_after((unsigned long)T1, (unsigned long)T2))
>>> printk("bug: %08lx < %08lx!\n",
>>> (unsigned long)T2, (unsigned long)T1);
>> This earlier fix by Kevin woulnd't have sense anymore with cycle_t...
> yeah, indeed - i've zapped this one too.
Moreover, it was somewhat incorrect from the very start since 'unsigned
long' is 64-bit on 64-bit machines, and cycles_t is 'unsigned long' on both
PPC32 and PPC64, so else branch would've *never* be executed...
> basically, what i'd like is the 32-bit clocks/cycles be handled
> intelligently, and not adding to the cruft that already is in
> kernel/latency_tracing.c.
Yeah, I've looked at 2.6.19-rt2 and saw the new approach. But what's left
to fix there, only the case of using PPC32 raw cycles? I guess you only need
to cast a result of get_cycles() to cycle_t... wait, it'll be explicitly cast
in the return stmt, won't it?
> Ingo
WBR, Sergei
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists