I should add one more but on information: the pwrite64_testcase.c
includes three statements for executing the pwrite64 syscall

#if 0
        nr = pwrite(fd, content, sizeof(content), 10);
        nr = syscall(SYS_pwrite64, fd, content, sizeof(content), 10, 0);
#endif
        __asm__ __volatile__("int $0x80"
                             : "=a"(nr)
                             : "0"(SYS_pwrite64), "b"(fd), "c"(content),
                               "d"(sizeof(content)), "S"(10), "D"(0));

The same result is seen with all three calls.  The first two should end
up using the |systenter| entry point in the VDSO.  The third uses the
old-fashioned entry point.  So the bug manifests across both the
systenter/int entry points.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1206746

Title:
  ptrace shows esi mutation across pread64 and pwrite64 syscalls

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-lts-quantal/+bug/1206746/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to