Closed scop closed 9 years ago
Forgot to note that this is with both reptyr 0.6.1 and the current git.
Hmm. Is the builder running an ix86 chroot inside an x86_64 host? If so, this may be related to that configuration.
I'll try to spin up a Fedora box and see if I can debug.
Yes, I believe the setup is like that.
an update – I spun up a Fedora 20 i386 box today and have been able to reproduce the failure. Haven't dug in further yet, but will update this issue as I do.
Turns out I completely misunderstood socketcall
, and this never worked on ia32 (I never actually ran the test suite on 32-bit, myself). Thanks for reporting this! Can you verify that current master fixes the issue for you? If so, I'll release an 0.6.2.
With current master the test suite now passes in my local i386 chroot as well as in the Fedora build system. But now build fails for armv7hl:
https://kojipkgs.fedoraproject.org//work/tasks/5778/8785778/build.log
cc -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -Wall -Werror -D_GNU_SOURCE -g -c -o attach.o attach.c
In file included from platform/platform.h:26:0,
from attach.c:46:
attach.c: In function 'setup_steal_socket_child':
attach.c:398:48: error: 'PAGE_SIZE' undeclared (first use in this function)
steal->child_scratch + PAGE_SIZE/2,
^
platform/linux/linux.h:73:49: note: in definition of macro 'do_socketcall'
__ret = ptrace_socketcall((child), (scratch), \
^
attach.c:398:48: note: each undeclared identifier is reported only once for each function it appears in
steal->child_scratch + PAGE_SIZE/2,
^
platform/linux/linux.h:73:49: note: in definition of macro 'do_socketcall'
__ret = ptrace_socketcall((child), (scratch), \
^
attach.c: In function 'steal_child_pty':
attach.c:447:48: error: 'PAGE_SIZE' undeclared (first use in this function)
steal->child_scratch + PAGE_SIZE/2,
^
platform/linux/linux.h:73:49: note: in definition of macro 'do_socketcall'
__ret = ptrace_socketcall((child), (scratch), \
^
<builtin>: recipe for target 'attach.o' failed
make: *** [attach.o] Error 1
Should those PAGE_SIZE
s be changed to sysconf(_SC_PAGE_SIZE)
? If not, I guess (untested) adding #include <asm/page.h>
to attach.c would fix it.
Whoops, thanks for the report. Replaced with sysconf
calls, and tested on both i386 and ARM.
Build and test suite success now in Fedora devel i386, x86_64, and armv7hl.
Awesome, thanks for verifying. Pushed 0.6.2 with both fixes.
Test suite fails on ix86 on Fedora 20 and development, succeeds on x86_64 and armv7hl:
https://kojipkgs.fedoraproject.org//work/tasks/615/8690615/build.log