On Thursday 22 April 2010 17:46:20 Jamie Lokier wrote:
> Mike Frysinger wrote:
> > i'm not sure if this is a Blackfin thing, but the first arg to execve()
> > isnt decoded correctly.  also, the forked programs hit the PANIC code
> > instead of decoding the exit ?  for example, the above strace shows:
> > 
> > [pid   228] execve(NULL, [0x2a0e520], [/* 0 vars */]) = 0
> > [pid   228] stat(NULL, {st_mode=S_IFREG|0644, st_size=959, ...}) =
> > 46679552 [pid   228] open(0x3, O_RDONLY)         = 0
> > [pid   228] mmap2(0x27e0000, 959, PROT_READ, MAP_PRIVATE, 3, 0) = 0x3
> > [pid   228] close(0)                    = 41812877
> > [pid   228] open(0x3, O_RDONLY)         = 3
> > [pid   228] fstat(0, {st_mode=S_IFREG|0755, st_size=229660, ...}) = 0
> > [pid   228] mmap2(0x27e1000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
> > MAP_ANONYMOUS|0x4000000, -1, 0) = 0x3
> > [pid   228] read(4096, "", 4096)        = 0
> > [pid   228] mmap2(0x2cc0000, 221828, PROT_READ|PROT_EXEC, MAP_PRIVATE|
> > MAP_DENYWRITE|MAP_EXECUTABLE, 3, 0) = 0
> > [pid   228] mmap2(0x2a50000, 15544, PROT_READ|PROT_WRITE, MAP_PRIVATE|
> > MAP_ANONYMOUS, -1, 0) = 0x3
> > [pid   228] pread(7028, "ECT", 7028, 949978046398464) = 3
> > [pid   228] close(0)                    = 41816064
> > [pid   228] munmap(0, 4096)             = 41811968
> > [pid   228] munmap(0, 959)              = 34001760
> > [pid   228] stat(NULL, {st_mode=S_IFREG|0755, st_size=20260, ...}) = 0
> 
> Almost every syscall is showing the wrong first argument and the wrong
> result.
> 
> Blackfin agument and result handling are clearly a mess.
> I cannot emphasise that enough :-)

well, they're broken past an execve().  before that, they work fine.  i had an 
item to get that fixed, but since i couldnt trace forks in the past, i never 
really cared.

the issue is just that the trace is out of sync -- it's decoding the call when 
it should be decoding the result, and decoding the result when it should be 
decoding the call.  again, due to the execve() behavior.
-mike

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Reply via email to