Your message dated Tue, 15 Oct 2024 23:46:26 +0200
with message-id 
<CA+6XHwQMsTC1Pf9AKuB=J0=9myxun6aqvnapsuqphfftl4j...@mail.gmail.com>
and subject line Re: strace: Shows wrong system call
has caused the Debian Bug report #459820,
regarding strace: Shows wrong system call
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
459820: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=459820
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: strace
Version: 4.5.14-2
Severity: normal


-- BEGIN TESTCASE PROGRAM --

#include <stdio.h>
#include <unistd.h>

int main ()
{
 printf("--------------------\n");
 __asm__("movl $2, %eax; int $0x80");
 printf("[i am %d]\n", getpid());
 return 0;
}

-- END TESTCASE PROGRAM --

The testcase code executes fork() by calling it directly. That is,
putting 2 (SYS_fork on i386) into eax and doing int 0x80. Let's see how
this runs on amd64:

--------------------
[i am 10869]
[i am 10868]

Yep, forks. Now let's see what strace tells about it:

<snip>
write(1, "--------------------\n", 21--------------------
)  = 21
open(umovestr: Input/output error
0x1, O_WRONLY|0x14[i am 10873]
)                = 10873
--- SIGCHLD (Child exited) @ 0 (0) ---
getpid()                                = 10872
write(1, "[i am 10872]\n", 13[i am 10872]
)          = 13
exit_group(13)                          = ?
Process 10872 detached


The heading line is printed, then there's an open() printed instead of a
fork, yet it did fork.

Possible cause: 2 is SYS_fork on i386, and this int 0x80 is i386 way of
syscalling. amd64 way is SYSCALL orsomethingicantremember, and 2 is
SYS_open on amd64. I don't know whether strace is confused, or whether
ptrace() gives out something silly.





-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-amd64
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages strace depends on:
ii  libc6                  2.3.6.ds1-13etch4 GNU C Library: Shared libraries

strace recommends no packages.

-- no debconf information



--- End Message ---
--- Begin Message ---
Version: 4.26-0.1

On Thu, 3 Oct 2019 05:37:08 +0300 "Dmitry V. Levin" <[email protected]> wrote:
> A ptrace API extension called PTRACE_GET_SYSCALL_INFO has been implemented to 
> fix this longstanding issue.
>
> Both strace >= 4.26 and linux kernel >= 5.3 are required to make the fix 
> available.

--- End Message ---

Reply via email to