[erlang-patches] fix valgrind error in erts/emulator/drivers/unix/ttsl_drv.c

Lukas Larsson lukas@REDACTED
Wed Apr 24 14:35:31 CEST 2013


Hello,

I've just merged this into maint so it will be part of the R16B01 release.

Lukas

On 22/04/13 17:46, Lukas Larsson wrote:
> Hello,
>
> I added a commit with the other memcopy to your patch. It is now 
> running in the nightly tests.
>
> Lukas
>
> On 22/04/13 13:15, Steve Vinoski wrote:
>> Hi Lukas and Sverker,
>>
>> No, I wasn't hitting ctrl-H. I was just running some eunit tests 
>> (with [verbose]) in a shell and when the tests finished and the shell 
>> went to print the next prompt, valgrind reported this error.
>>
>> One of my Basho colleagues, though, says he has seen errors that seem 
>> related to this when hitting ctrl-D after a sequence of cursor 
>> movements on the shell command line, but I was never able to 
>> reproduce that. Perhaps he was hitting the problem Sverker refers to.
>>
>> If you want me to change the patch to fix the other memcpy, just let 
>> me know.
>>
>> --steve
>>
>>
>>
>> On Mon, Apr 22, 2013 at 4:53 AM, Sverker Eriksson 
>> <sverker.eriksson@REDACTED 
>> <mailto:sverker.eriksson@REDACTED>> wrote:
>>
>>     The other call to memcpy in the same function del_chars() seems
>>     to have the same problem.
>>     Probably possible to trigger with ctrl-D.
>>
>>     /Sverker
>>
>>     Lukas Larsson wrote:
>>
>>         Hello Steve!
>>
>>         Thanks for the patch.
>>
>>         I had to use ctrl-H in the middle of a term in the terminal
>>         to trigger the report, was this the case for you as well?
>>
>>         Lukas
>>
>>         On 22/04/13 02:23, Steve Vinoski wrote:
>>
>>             On Linux I noticed the following complaint while doing
>>             some valgrind testing:
>>
>>             ==18040== Thread 6:
>>             ==18040== Source and destination overlap in
>>             memcpy(0xf3f3f04, 0xf3f3f08, 52)
>>             ==18040==    at 0x4C2CFA0: memcpy@@GLIBC_2.14 (in
>>             /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
>>             ==18040==    by 0x5CF527: del_chars (ttsl_drv.c:845)
>>             ==18040==    by 0x5CED5E: ttysl_from_erlang (ttsl_drv.c:658)
>>             ==18040==    by 0x4982E3: erts_write_to_port (io.c:1235)
>>             ==18040==    by 0x49A2BD: erts_port_command (io.c:2223)
>>             ==18040==    by 0x48C054: do_send (bif.c:1962)
>>             ==18040==    by 0x48CB6E: erl_send (bif.c:2162)
>>             ==18040==    by 0x566599: process_main (beam_emu.c:1665)
>>             ==18040==    by 0x4B1A95: sched_thread_func
>>             (erl_process.c:4834)
>>             ==18040==    by 0x6075E2: thr_wrapper (ethread.c:106)
>>             ==18040==    by 0x5560E99: start_thread
>>             (pthread_create.c:308)
>>
>>             This patch fixes the problem.
>>
>>             git fetch git://github.com/vinoski/otp.git
>>             <http://github.com/vinoski/otp.git>
>>             <http://github.com/vinoski/otp.git> sv-ttsl-valgrind
>>
>>
>>             https://github.com/vinoski/otp/compare/erlang:maint...sv-ttsl-valgrind
>>             https://github.com/vinoski/otp/compare/erlang:maint...sv-ttsl-valgrind.patch
>>
>>
>>             --steve
>>
>>
>>             _______________________________________________
>>             erlang-patches mailing list
>>             erlang-patches@REDACTED <mailto:erlang-patches@REDACTED>
>>             http://erlang.org/mailman/listinfo/erlang-patches
>>
>>
>>
>>         ------------------------------------------------------------------------
>>
>>
>>
>>         _______________________________________________
>>         erlang-patches mailing list
>>         erlang-patches@REDACTED <mailto:erlang-patches@REDACTED>
>>         http://erlang.org/mailman/listinfo/erlang-patches
>>
>>
>>     _______________________________________________
>>     erlang-patches mailing list
>>     erlang-patches@REDACTED <mailto:erlang-patches@REDACTED>
>>     http://erlang.org/mailman/listinfo/erlang-patches
>>
>>
>
>
>
> _______________________________________________
> erlang-patches mailing list
> erlang-patches@REDACTED
> http://erlang.org/mailman/listinfo/erlang-patches

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-patches/attachments/20130424/a0e5d676/attachment.htm>


More information about the erlang-patches mailing list