From: David Allsopp <dra-news@metastack.com>
To: Alexey Egorov <alex.only.d@gmail.com>
Cc: David Allsopp <dra-news@metastack.com>,
"caml-list@inria.fr" <caml-list@inria.fr>
Subject: Re: [Caml-list] memory corruption using C stub
Date: Sun, 11 Jun 2017 12:07:52 +0000 [thread overview]
Message-ID: <69699CC5-7EF4-42FF-92DB-C065F412963C@metastack.com> (raw)
In-Reply-To: <CAJannG6itBi6R5=RJ1UUDspYqXFe3riLbb9S-q_=wEL6FCC7qQ@mail.gmail.com>
On 11 Jun 2017, at 12:54, Alexey Egorov <alex.only.d@gmail.com> wrote:
>
> OCaml side is a complex server-side application; unfortunately, it's
> closed-source and when I'm trying to minimize OCaml side too it stops
> crashing...
Ah well! Are there other packages you are using which themselves have C stubs? If minimising the OCaml application is also eliminating the problem, then it could be that it's just the allocations in your (correct) C stub which are revealing the crash elsewhere. Unfortunately, incorrect C stub can include OCaml unix functions...
Spattering Gc.full_major on the OCaml can help try to find corruptions earlier - have you tried that too?
> I'm using fdopen's opam repository
> (https://github.com/fdopen/opam-repository-mingw) with compiler's
> versions from 4.03 to 4.05-beta3.
I presume you're seeing the crash from all versions? Are you able to do a 4.02.3 test, or is that impractical?
David
> 2017-06-11 16:45 GMT+05:00 David Allsopp <dra-news@metastack.com>:
>>> On 11 Jun 2017, at 12:38, Alexey Egorov <alex.only.d@gmail.com> wrote:
>>>
>>> OK, I'm minimized this function as much as possible and it's still
>>> crashing - https://pastebin.com/MZ0Qkh9B
>>> Now I'm thinking that is compiler's bug on windows...
>>
>> Are you able to post the OCaml side of your minimised code? Which port of OCaml are you using?
>>
>>
>> David
>>
>>
>>> 2017-06-10 20:33 GMT+05:00 Alexey Egorov <alex.only.d@gmail.com>:
>>>> Hello,
>>>>
>>>> I have an OCaml application with some C code which (I believe) is the
>>>> reason of some random crashes.
>>>>
>>>> Here is the code - https://pastebin.com/FVtLphZu
>>>> This function reads file at given offset, divides data into chunks and
>>>> compute checksums and compression ratio:
>>>> external compute_data_props
>>>> : string -> int -> int -> int -> (int * int * float) list =
>>>> "compute_data_props"
>>>>
>>>> The problem is, after some calls to this stub, application is crashing
>>>> at random places in OCaml code.
>>>> I can't figure out what's going wrong, but replacing this stub with
>>>> dummy function (which does nothing but returns some predefined list)
>>>> eliminates the problem.
>>>>
>>>> What can we do to debug it? We are using OCaml 4.04.1 and Windows 10,
>>>> and there is no other C stubs in our codebase.
>>>>
>>>> Thanks!
>>>
>>> --
>>> Caml-list mailing list. Subscription management and archives:
>>> https://sympa.inria.fr/sympa/arc/caml-list
>>> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
>>> Bug reports: http://caml.inria.fr/bin/caml-bugs
next prev parent reply other threads:[~2017-06-11 12:08 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-10 15:33 Alexey Egorov
2017-06-10 15:40 ` Viet Le
2017-06-10 17:00 ` Alexey Egorov
2017-06-10 15:44 ` Daniel Bünzli
2017-06-10 15:50 ` Daniel Bünzli
2017-06-10 16:01 ` Daniel Bünzli
2017-06-11 11:37 ` Alexey Egorov
2017-06-11 11:45 ` David Allsopp
2017-06-11 11:54 ` Alexey Egorov
2017-06-11 12:07 ` David Allsopp [this message]
2017-06-11 15:26 ` Alexey Egorov
2017-06-11 18:49 ` Alexey Egorov
2017-06-11 19:20 ` David Allsopp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=69699CC5-7EF4-42FF-92DB-C065F412963C@metastack.com \
--to=dra-news@metastack.com \
--cc=alex.only.d@gmail.com \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox