From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by sympa.inria.fr (Postfix) with ESMTPS id 7138E7FCCB for ; Tue, 7 Apr 2015 13:22:24 +0200 (CEST) Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of mark.g.j.christiaens@gmail.com) identity=pra; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mark.g.j.christiaens@gmail.com"; x-sender="mark.g.j.christiaens@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail2-smtp-roc.national.inria.fr: domain of mark.g.j.christiaens@gmail.com designates 74.125.82.42 as permitted sender) identity=mailfrom; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mark.g.j.christiaens@gmail.com"; x-sender="mark.g.j.christiaens@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail2-smtp-roc.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wg0-f42.google.com) identity=helo; client-ip=74.125.82.42; receiver=mail2-smtp-roc.national.inria.fr; envelope-from="mark.g.j.christiaens@gmail.com"; x-sender="postmaster@mail-wg0-f42.google.com"; x-conformance=sidf_compatible X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AwAQDKvCNVmypSfUpcg1pcBYMQskKNbYIAhE6CWwdMAQEBAQEBEgEBAQEBBgsLCRQuhDcRHQEbHgMSEDcCJAERAQUBV4d4AQMRpRiDLT4xiziBa4J3jAkKGScNVIRxAQUOj06DOoFFBZRshg+BV5E6EiOBDAmBZwyCIDwxgkMBAQE X-IPAS-Result: A0AwAQDKvCNVmypSfUpcg1pcBYMQskKNbYIAhE6CWwdMAQEBAQEBEgEBAQEBBgsLCRQuhDcRHQEbHgMSEDcCJAERAQUBV4d4AQMRpRiDLT4xiziBa4J3jAkKGScNVIRxAQUOj06DOoFFBZRshg+BV5E6EiOBDAmBZwyCIDwxgkMBAQE X-IronPort-AV: E=Sophos;i="5.11,537,1422918000"; d="scan'208";a="131929277" Received: from mail-wg0-f42.google.com ([74.125.82.42]) by mail2-smtp-roc.national.inria.fr with ESMTP/TLS/RC4-SHA; 07 Apr 2015 13:22:23 +0200 Received: by wgin8 with SMTP id n8so52524253wgi.0 for ; Tue, 07 Apr 2015 04:22:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:date:message-id:subject:from:to:content-type; bh=ajKcvxNAQHbaEOZDm2T1Vd4voFg3xPOWMNq8HMT+qjE=; b=tpCV09v5Sbkm9Mujmg+d0rj93LQMbSAwI700NrxzXYwBHcgLisRWsB4aI57HRxAJiB qScv8ZaGNZh84mH7kWjLz6FTPX5oOfObwex0mA4T4eOrABnS5ZkH5EOBKVF53LRargts XjuaHI3oDWVr1DTFLVy0viaZClp7nTiqtrDXwIoy3vWaawURbiS4j3CUolSyx7NWpAtf Xj52lKWaq/Nm4mrINaSN2kcjPGUwyjEUh60da2qxBvPE4+jo0fRXDOPC+hvyilaqFk80 td93+b4wB6G8l6lJ1qvVrfFQ8YjHqn38ySWoJJJj6qqt8paVpU76AOe75D9TVpBUJzQK hnUA== MIME-Version: 1.0 X-Received: by 10.180.73.132 with SMTP id l4mr3750858wiv.27.1428405743535; Tue, 07 Apr 2015 04:22:23 -0700 (PDT) Received: by 10.27.6.137 with HTTP; Tue, 7 Apr 2015 04:22:23 -0700 (PDT) Date: Tue, 7 Apr 2015 13:22:23 +0200 Message-ID: From: Mark Christiaens To: caml-list@inria.fr Content-Type: multipart/alternative; boundary=f46d043c7e62f055fd051320a072 Subject: [Caml-list] Unitialized values according to Valgrind --f46d043c7e62f055fd051320a072 Content-Type: text/plain; charset=UTF-8 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 --f46d043c7e62f055fd051320a072 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I'm using OCaml 4.00.1 with (among others) LWT 2.3.2.= =C2=A0 We have inexplicable crashes of our server process.=C2=A0 I've b= een digging through our source code looking but no success so far.=C2=A0 I&= #39;ve run our process with the Valgrind memory checker and I get some unex= pected warnings like: =C2=A0

=3D=3D4181=3D=3D Conditional jump or mo= ve depends on uninitialised value(s)
=3D=3D4181=3D=3D =C2=A0 =C2=A0at 0x= ECEDDA: camlWeak__loop_1164 (weak.ml:209= )
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDC9A24: camlLwt_io__make_1212 (lwt_io.ml:544)
=3D=3D4181=3D=3D =C2=A0 = =C2=A0by 0xD03E24: camlConnection_util__to_conn_1054 (connection_util.ml:81)
=3D=3D4181=3D=3D =C2=A0 = =C2=A0by 0xB514B5: camlLwt_server__fun_1894 (Lwt_server.ml:202)
=3D=3D41= 81=3D=3D =C2=A0 =C2=A0by 0xDD70B3: camlLwt__try_bind_1364 (lwt.ml:553)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDD8945:= camlLwt__with_value_1552 (lwt.ml:977)=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xB51E9F: camlLwt_server__fun_1857 (Lwt_s= erver.ml:197)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xB52CCA: camlLwt_server_= _fun_1758 (Lwt_server.ml:175)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDD3C95:= camlLwt__fun_2035 (lwt.ml:438)
=3D=3D= 4181=3D=3D =C2=A0 =C2=A0by 0xDD593D: camlLwt__run_waiters_1128 (lwt.ml:153)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDD= 593D: camlLwt__run_waiters_1128 (lwt.ml:153)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDD58AC: camlLwt__run_waiters_rec_= 1110 (
lwt.ml:136)

and

=3D= =3D4181=3D=3D Conditional jump or move depends on uninitialised value(s)=3D=3D4181=3D=3D =C2=A0 =C2=A0at 0x10F605B: caml_page_table_lookup (in /ho= me/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
=3D=3D4181=3D=3D = =C2=A0 =C2=A0by 0x10F6724: caml_modify (in /home/christim/tmp/DSS-buchla/ta= rget/debug/bin/dss.bin)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xECEDB1: camlW= eak__loop_1164 (weak.ml:208)
=3D=3D41= 81=3D=3D =C2=A0 =C2=A0by 0xDC9A24: camlLwt_io__make_1212 (lwt_io.ml:544)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDC= DCC8: camlLwt_io__entry (lwt_io.ml:1333)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xA660E8: caml_program (in /home/ch= ristim/tmp/DSS-buchla/target/debug/bin/dss.bin)
=3D=3D4181=3D=3D =C2=A0 = =C2=A0by 0x1103CFD: ??? (in /home/christim/tmp/DSS-buchla/target/debug/bin/= dss.bin)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0x10F2964: caml_main (in /home= /christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
=3D=3D4181=3D=3D =C2= =A0 =C2=A0by 0x10F299F: main (in /home/christim/tmp/DSS-buchla/target/debug= /bin/dss.bin)


and

=3D=3D4181=3D=3D Use of uninitialised = value of size 8
=3D=3D4181=3D=3D =C2=A0 =C2=A0at 0x10F5AA3: caml_empty_m= inor_heap (in /home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
= =3D=3D4181=3D=3D =C2=A0 =C2=A0by 0x10F5BB6: caml_minor_collection (in /home= /christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
=3D=3D4181=3D=3D =C2= =A0 =C2=A0by 0x10F3E52: caml_garbage_collection (in /home/christim/tmp/DSS-= buchla/target/debug/bin/dss.bin)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0x1103= B1F: ??? (in /home/christim/tmp/DSS-buchla/target/debug/bin/dss.bin)
=3D= =3D4181=3D=3D =C2=A0 =C2=A0by 0xEB1148: camlPrintf__ac_of_format_1155 (
printf.ml:306)
=3D=3D4181=3D=3D =C2=A0 = =C2=A0by 0xEB11E4: camlPrintf__kapr_1179 (= printf.ml:311)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xDA6201: camlLwt_lo= gging__string_of_time_1072 (Lwt_logging.ml:137)
=3D=3D4181=3D=3D =C2=A0 = =C2=A0by 0xDA6C40: camlLwt_logging__log_1193 (Lwt_logging.ml:206)
=3D=3D= 4181=3D=3D =C2=A0 =C2=A0by 0xD0304A: camlConnection_util__fun_1298 (connection_util.ml:45)
=3D=3D4181= =3D=3D =C2=A0 =C2=A0by 0xDD6B9F: camlLwt__catch_1315 (lwt.ml:470)
=3D=3D4181=3D=3D =C2=A0 =C2=A0by 0xEACB28: caml= CamlinternalLazy__force_lazy_block_1010 (camlinternalLazy.ml:27)
=3D=3D4= 181=3D=3D =C2=A0 =C2=A0by 0xDD6B9F: camlLwt__catch_1315 (lwt.ml:470)

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

Mark
--f46d043c7e62f055fd051320a072--