>So the correct fix would be to simply push r1-r4 onto the stack instead
>of r0-r4 in sys_syscall? I'm guessing somewhere the order they are
>popped off would have to be changed, but I haven't quite figured out
>where that is yet.
No, I don't think so. What sys_syscall is actually doing is retrieving the
arg registers that were previously pushed onto the stack by the entry code.
My guess from a quick look at the code is that it's getting an off-by-one
result because R4 has gotten pushed underneath R0; you could try changing it
to be something like
addle ip, sp, #4 @ discard old R0
ldmleib ip, {r0 - r4} @ get our args from original R1..R5
Russell can probably give you a more definitive answer. I don't really have
time to experiment with it right now.
p.
unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]