On 29 Feb 2016 15:56, Rich Felker wrote:
> I've been trying to use strace on a NOMMU system (sh2) and have been
> experiencing an issue where the return value (read from r0) and args
> 5/6 (r0,r1) are bogus, making the output much less useful than it
> otherwise would be. The problem seems to be that the tracer is
> desynced with the child's STOP parity and is confusing syscall
> entry/exit, probably due to exec_or_die not stopping itself before
> exec to sync with the parent. Even if not for the bug I'm
> experiencing, this seems to be problematic in that early syscalls in
> the child can be lost (I've actually hit that problem too).

on Blackfin, strace was always flaky beyond the first process.
i never got around to tracking it down.

> The attached (very hackish at the moment) patch makes it work for me
> by eliminating the need to define NOMMU_SYSTEM to 1 and using clone()
> with CLONE_VM and a new stack for the child, instead of vfork. I see
> some potential issues that need to be addressed before this could be
> made into a proper solution, though:
> 
> 1. I'm not sure if all NOMMU systems strace supports have clone. If
>    so, I think vfork could be dropped completely and this used
>    instead.

uClibc has long required clone, so seems safe to assume it exists
-mike

Attachment: signature.asc
Description: Digital signature

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=272487151&iu=/4140
_______________________________________________
Strace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to