diff options
Diffstat (limited to 'gitlab/issues_text/target_arm/host_missing/accel_missing/2333')
| -rw-r--r-- | gitlab/issues_text/target_arm/host_missing/accel_missing/2333 | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/gitlab/issues_text/target_arm/host_missing/accel_missing/2333 b/gitlab/issues_text/target_arm/host_missing/accel_missing/2333 deleted file mode 100644 index ffd0f3714..000000000 --- a/gitlab/issues_text/target_arm/host_missing/accel_missing/2333 +++ /dev/null @@ -1,45 +0,0 @@ -VDSO on armeb seems broken -Description of problem: -I'm seeing the VDSO method for `__clock_gettime64()` crashing under `qemu-armeb` (stack trace under Additional information, below). - -I rebuilt glibc with VDSO globally kludged off, and all was well. -Steps to reproduce: -``` -#include <time.h> -#include <stdlib.h> -#include <stdio.h> - -int main(int argc, char **argv) { - time_t ts; - printf("%ld\n", time(&ts)); - exit(0); -} -``` - -Results, first with VDSO active via a system snapshot, second with the patched glibc: -``` -$ armeb-linux-gnueabihf-gcc -o /tmp/time /tmp/time.c -$ qemu-armeb -L /.mirrorsnaps/.rootsnap.prev/usr/armeb-linux-gnueabihf /tmp/time -qemu: uncaught target signal 11 (Segmentation fault) - core dumped -Segmentation fault -$ qemu-armeb -L /usr/armeb-linux-gnueabihf /tmp/time -1715123280 -``` -Additional information: -``` -Program received signal SIGSEGV, Segmentation fault. -0x4082b462 in ?? () -(gdb) bt -#0 0x4082b462 in ?? () -#1 0x40bf64a4 in __GI___clock_gettime64 (clock_id=clock_id@entry=5, tp=tp@entry=0x407fe9c0) - at ../sysdeps/unix/sysv/linux/clock_gettime.c:42 -#2 0x40be9f58 in __GI___time64 (timer=0x0) at ../sysdeps/unix/sysv/linux/time.c:60 -#3 __time (timer=0x407fea04) at ../sysdeps/unix/sysv/linux/time.c:73 -``` - -`clock_gettime.c:42` is -``` - r = INTERNAL_VSYSCALL_CALL (vdso_time64, 2, clock_id, tp); -``` - -Interestingly, the problem doesn't occur on qemu-arm (little endian), all else equal. |