Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 14 Mar 2013 23:52:05 +0400
From: "Dmitry V. Levin" <ldv@...linux.org>
To: owl-dev@...ts.openwall.com
Subject: Re: strace

On Thu, Mar 14, 2013 at 11:17:21PM +0400, Solar Designer wrote:
> Dmitry,
> 
> It looks like our strace broke on i686 between these two versions:
> 
> * Wed May 02 2012 Dmitry V. Levin <ldv-at-owl.openwall.com> 4.7-owl1
> - Updated to 4.7.
> 
> * Tue Mar 15 2011 Dmitry V. Levin <ldv-at-owl.openwall.com> 4.6-owl1
> - Updated to 4.6.
> 
> On x86_64, 4.7-owl1 works fine.
> 
> On i686, it fails.  It prints lots of restart_syscall() lines instead of
> the actual syscall info.

Does it happen with i686 strace running under x86_64 or i686 kernel?

Both x86_64 and i686 strace builds worked for me at the time of 4.7-owl1
release under an x86_64 kernel based on 2.6.18-308.el5.028stab099.3.

> $ strace id          
> restart_syscall()                       = 0
> restart_syscall()                       = 0x9889000
> restart_syscall()                       = -1 (errno 2)
> [...]
> restart_syscall()                       = 0
> restart_syscall()                       = 0
> restart_syscall( <unfinished ...>
> +++ exited with 0 +++
> 
> The above run was on a system with 2.6.18-308.20.1.el5.028stab104.3.owl1,
> but I also tested with a much older kernel, got similar misbehavior.
> (strace was built against the new kernel's headers in either case, though.)

restart_syscall is syscall number 0.  Could the difference between older
and newer asm/ptrace.h versions be so fatal?


-- 
ldv

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ