caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
* [Caml-list] Unitialized values according to Valgrind
@ 2015-04-07 11:22 Mark Christiaens
  0 siblings, 0 replies; only message in thread
From: Mark Christiaens @ 2015-04-07 11:22 UTC (permalink / raw)
  To: caml-list

[-- Attachment #1: Type: text/plain, Size: 3213 bytes --]

I'm using OCaml 4.00.1 with (among others) LWT 2.3.2.  We have inexplicable
crashes of our server process.  I've been digging through our source code
looking but no success so far.  I've run our process with the Valgrind
memory checker and I get some unexpected warnings like:

==4181== Conditional jump or move depends on uninitialised value(s)
==4181==    at 0xECEDDA: camlWeak__loop_1164 (weak.ml:209)
==4181==    by 0xDC9A24: camlLwt_io__make_1212 (lwt_io.ml:544)
==4181==    by 0xD03E24: camlConnection_util__to_conn_1054 (
connection_util.ml:81)
==4181==    by 0xB514B5: camlLwt_server__fun_1894 (Lwt_server.ml:202)
==4181==    by 0xDD70B3: camlLwt__try_bind_1364 (lwt.ml:553)
==4181==    by 0xDD8945: camlLwt__with_value_1552 (lwt.ml:977)
==4181==    by 0xB51E9F: camlLwt_server__fun_1857 (Lwt_server.ml:197)
==4181==    by 0xB52CCA: camlLwt_server__fun_1758 (Lwt_server.ml:175)
==4181==    by 0xDD3C95: camlLwt__fun_2035 (lwt.ml:438)
==4181==    by 0xDD593D: camlLwt__run_waiters_1128 (lwt.ml:153)
==4181==    by 0xDD593D: camlLwt__run_waiters_1128 (lwt.ml:153)
==4181==    by 0xDD58AC: camlLwt__run_waiters_rec_1110 (lwt.ml:136)

and

==4181== Conditional jump or move depends on uninitialised value(s)
==4181==    at 0x10F605B: caml_page_table_lookup (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x10F6724: caml_modify (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0xECEDB1: camlWeak__loop_1164 (weak.ml:208)
==4181==    by 0xDC9A24: camlLwt_io__make_1212 (lwt_io.ml:544)
==4181==    by 0xDCDCC8: camlLwt_io__entry (lwt_io.ml:1333)
==4181==    by 0xA660E8: caml_program (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x1103CFD: ??? (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x10F2964: caml_main (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x10F299F: main (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)


and

==4181== Use of uninitialised value of size 8
==4181==    at 0x10F5AA3: caml_empty_minor_heap (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x10F5BB6: caml_minor_collection (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x10F3E52: caml_garbage_collection (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0x1103B1F: ??? (in
/home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
==4181==    by 0xEB1148: camlPrintf__ac_of_format_1155 (printf.ml:306)
==4181==    by 0xEB11E4: camlPrintf__kapr_1179 (printf.ml:311)
==4181==    by 0xDA6201: camlLwt_logging__string_of_time_1072
(Lwt_logging.ml:137)
==4181==    by 0xDA6C40: camlLwt_logging__log_1193 (Lwt_logging.ml:206)
==4181==    by 0xD0304A: camlConnection_util__fun_1298 (
connection_util.ml:45)
==4181==    by 0xDD6B9F: camlLwt__catch_1315 (lwt.ml:470)
==4181==    by 0xEACB28: camlCamlinternalLazy__force_lazy_block_1010
(camlinternalLazy.ml:27)
==4181==    by 0xDD6B9F: camlLwt__catch_1315 (lwt.ml:470)

In particular, this last one worries me.  All evidence I find seems to
indicate a rogue "free" call freeing data structures are random.  Are these
unitialized values to be expected?

Mark

[-- Attachment #2: Type: text/html, Size: 4058 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2015-04-07 11:22 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-07 11:22 [Caml-list] Unitialized values according to Valgrind Mark Christiaens

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).