NOMMU bogus syscall return values

Mike Frysinger vapier at gentoo.org
Thu Mar 3 04:44:48 UTC 2016


On 02 Mar 2016 20:28, Rich Felker wrote:
> On Thu, Mar 03, 2016 at 04:01:21AM +0300, Dmitry V. Levin wrote:
> > On Mon, Feb 29, 2016 at 05:59:44PM -0500, Mike Frysinger wrote:
> > > On 29 Feb 2016 15:56, Rich Felker wrote:
> > [...]
> > > > 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
> > 
> > strace assumes that PTRACE_SETOPTIONS works, which essentially means that
> > linux kernel >= 2.6 is required.  On some architectures, newer kernel is
> > required (e.g. >= 2.6.15 on mips for PTRACE_GETREGS support).  I don't
> > know for sure whether all supported NOMMU systems have CLONE_VM, but
> > I agree with Mike it seems safe to assume they do.
> 
> I was merely unaware whether strace supported any non-Linux systems.
> Linux has had clone/CLONE_VM since basically forever (2.0, maybe
> earlier) so if strace is Linux-only this is a non-issue. Should I try
> to prepare a patch converting all the forks to clone so that NOMMU is
> not a special case? What should be done about daemonized tracer mode?

strace used to support more than Linux, but i think since no one has been
keeping up other OS's, we just wait for someone to step up.  not sure how
Dmitry feels about it.  we certainly don't do any build/run tests :).
-mike
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20160302/ed35149a/attachment.bin>


More information about the Strace-devel mailing list