Per the suggestion of ggarra and Sylvain, I've been running
our robotic
lab control
application under valgrind on an x86 laptop rather than our
ARM based
CPU board.
I've posted valgrind's stderr output and the suppression
file on our FTP
site:
ftp://ftp.mbari.org/pub/brent
the suppression file is rubySuppressions.valgrind
the stderr output is valgrind.trace2
So far, I have not triggered a Segfault with the simulated
hardware
currently
available to me.
The unhandled ioctl is expected. We're locking
a serial port for exclusive access.
Many of the memcheck errors have been suppressed as they
are apparently artifacts of Ruby's conservative
garbarge collector. However, those below *do* worry me.
Are they innocuous, or do they indicate a real problem?
....
==10837== Invalid write of size 1
==10837== at 0x401DEAC: memcpy (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==10837== by 0x8062E5E: rb_thread_restore_context
(eval.c:7624)
==10837== by 0x8062CA8: stack_extend (eval.c:7575)
==10837== by 0x8062CF3: rb_thread_restore_context
(eval.c:7592)
==10837== by 0x8062CA8: stack_extend (eval.c:7575)
==10837== by 0x8062CF3: rb_thread_restore_context
(eval.c:7592)
==10837== by 0x8062CA8: stack_extend (eval.c:7575)
==10837== by 0x8062CF3: rb_thread_restore_context
(eval.c:7592)
==10837== by 0x8062CA8: stack_extend (eval.c:7575)
==10837== by 0x8062CF3: rb_thread_restore_context
(eval.c:7592)
==10837== by 0x8062CA8: stack_extend (eval.c:7575)
==10837== by 0x8062CF3: rb_thread_restore_context
(eval.c:7592)
==10837== Address 0xBEFE8908 is on thread 1's stack
==10837==
==10837== Invalid write of size 1
==10837== at 0x401DEAC: memcpy (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==10837== by 0x8062E5E: rb_thread_restore_context
(eval.c:7624)
==10837== by 0x8063D21: rb_thread_schedule (eval.c:7987)
==10837== by 0x8063E9D: rb_thread_fd_writable
(eval.c:8018)
==10837== by 0x8070835: io_fflush (io.c:256)
==10837== by 0x8070A70: rb_io_flush (io.c:339)
==10837== by 0x805ACEE: call_cfunc (eval.c:4288)
==10837== by 0x805B78F: rb_call0 (eval.c:4423)
==10837== by 0x805C2CA: rb_call (eval.c:4654)
==10837== by 0x8055F53: rb_eval (eval.c:2559)
==10837== by 0x80594C9: rb_yield_0 (eval.c:3650)
==10837== by 0x80554A1: rb_eval (eval.c:2391)
==10837== Address 0xBEFE8908 is on thread 1's stack
==10837==
==10837== Invalid write of size 1
==10837== at 0x401DEAC: memcpy (in
/usr/lib/valgrind/x86-linux/vgpreload_memcheck.so)
==10837== by 0x8062E5E: rb_thread_restore_context
(eval.c:7624)
==10837== by 0x8063D21: rb_thread_schedule (eval.c:7987)
==10837== by 0x806466B: rb_thread_stop (eval.c:8309)
==10837== by 0x805ACEE: call_cfunc (eval.c:4288)
==10837== by 0x805B78F: rb_call0 (eval.c:4423)
==10837== by 0x805C2CA: rb_call (eval.c:4654)
==10837== by 0x8055F53: rb_eval (eval.c:2559)
==10837== by 0x805BDE8: rb_call0 (eval.c:4560)
==10837== by 0x805C2CA: rb_call (eval.c:4654)
==10837== by 0x8055F53: rb_eval (eval.c:2559)
==10837== by 0x805BDE8: rb_call0 (eval.c:4560)
==10837== Address 0xBEFE8908 is on thread 1's stack
=
--
Brent Roman
Software Engineer Tel: 831 775 1808
425 Clinton St., Santa Cruz, California, 95062
mailto:brent mbari.org http://www.mbari.org/~bre
nt
|