lkml.org 
[lkml]   [2008]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: mmiotrace broken in linux-next (8-bit writes only)
On Mon, Jun 30, 2008 at 10:48 PM, Pekka Paalanen <pq@iki.fi> wrote:
> On Mon, 30 Jun 2008 14:37:36 +0200
> Ingo Molnar <mingo@elte.hu> wrote:
>
>> it would also be nice if you could check whether ftrace as integrated
>> into linux-next has a functional mmiotrace. (and work with me in -tip on
>> fixing it if it doesnt)
>
> I tested it and it is broken in two ways. First is the NULL pointer
> dereference, for which I made a quick patch (in the end of this email)
> and I don't know what is going on in there. The patch allows me to run
> my simple test. However, the test shows, that all 8-bit MMIO writes are
> recorded with datum 0x80, which is incorrect. I've no idea what could
> have changed. All the 16 and 32-bit ops are ok, and so are 8-bit reads,
> which means the writes really do happen with the correct data, but just
> mmiotrace gets it wrong. Mmiotrace source files are unchanged.
>
> Has there been changes in compiler flags or iowrite8() that would cause
> different instructions to be used in implementing the MMIO write?
> I'm completely baffled.
>
> I guess I should try to bisect, but I don't know when I can do that.
> I tested on Athlon64, 64-bit UP kernel.
>
> Vegard, have you experienced any weird issues in instruction decoding?
> But I guess sort of bug would not affect you, since kmemcheck is not
> interested in the data.

No. But kmemcheck is not in -next yet either AFAIK :-)

I'll test the latest tip/master and see if I can try out mmiotrace as
well. But you are right, kmemcheck is not interested in the data.

(BTW, Ingo, Pekka E., I had an additional idea for kmemcheck: We can
record a checksum of bytes that are written and compare them with the
actual value when they are next read. If they differ, we are either
dealing with DMA memory or bad RAM. But this is long into the future..
:-))

Can you please post a few IPs that give you byte-writes with 0x80
value, then post the disassemblies of those IPs? Also, a chunk of the
log would be nice, just so we know what it looks like.


Vegard

--
"The animistic metaphor of the bug that maliciously sneaked in while
the programmer was not looking is intellectually dishonest as it
disguises that the error is the programmer's own creation."
-- E. W. Dijkstra, EWD1036


\
 
 \ /
  Last update: 2008-06-30 23:55    [W:0.527 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site