Hi,

On Fri, Apr 29, 2011 at 12:13:14AM -0400, Michael A Fetterman wrote:
> strace on x86_64 sometimes gets confused by interrupted system calls.
> This happens routinely when tracing a large tree of processes.
> 
> You get things like this:
> 
> 1405  vfork( <unfinished ...>
> <various output from other processes omitted>
> 1405  <... vfork resumed> )             = 1406
> 1405  close(6)                          = 0
> 1405  read(5,  <unfinished ...>
> <various output from other processes omitted>
> 1405  <... close resumed> )             = 38
> 
> Note that strange "unfinished read" which is "resumed" as a close() syscall !!
> 
> What's going on?
> Here's a big hint:
> In 32-bit mode, the "read" syscall is sysycall #3.
> In 64-bit mode, the "close" syscall is syscall #3.
> 
> Process 1405 was a 32-bit process.
> In between the "unfinished read" and the "resumed close" there was other 
> output,
> some of which was the handling of a 64-bit process's syscall.
> That caused the syscall "personality" in strace to switch to 64-bit, and 
> nothing
> ever switched it back.

Michael, thanks for reporting this issue, and sorry for long delay -
the message was accidentally overlooked.

> The fix is below...

Unfortunately, that patch no longer applies to the current HEAD.
I've prepared a new fix:
http://strace.git.sourceforge.net/git/gitweb.cgi?p=strace/strace;a=commitdiff;h=v4.6-179-ga5a839a
Branch ldv/master also has one more fix for x86 support on x86-64.
Please give it a try.


-- 
ldv

Attachment: pgpldTFoU70Vb.pgp
Description: PGP signature

------------------------------------------------------------------------------
Write once. Port to many.
Get the SDK and tools to simplify cross-platform app development. Create 
new or port existing apps to sell to consumers worldwide. Explore the 
Intel AppUpSM program developer opportunity. appdeveloper.intel.com/join
http://p.sf.net/sfu/intel-appdev
_______________________________________________
Strace-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/strace-devel

Reply via email to