aboutsummaryrefslogtreecommitdiffstats
path: root/erts/etc
AgeCommit message (Collapse)Author
2011-04-06heart: remove garbage appended to heart commandMichael Santos
heart:get_cmd/0 is documented to return an empty string if the command is cleared. get_cmd/0 returns 2 extra bytes: 1 byte for the trailing null, 1 byte from the op (the op is an unsigned char and 2 bytes are allocated for it in the returned buffer). 1> heart:get_cmd(). {ok,[0,0]} 2> heart:set_cmd("echo hello"). ok 3> heart:get_cmd(). {ok,[101,99,104,111,32,104,101,108,108,111,0,0]} 4> heart:clear_cmd(). ok 5> heart:get_cmd(). {ok,[0,99]}
2011-04-05Merge branch 'pan/run_erl_race_creating_fifo/OTP-9164' into devPatrik Nyblom
* pan/run_erl_race_creating_fifo/OTP-9164: Fix race in pipe creation. Two simultaneous node starts caused failure
2011-04-05Merge branch 'cg/fix-pointer-dereference' into devHenrik Nord
* cg/fix-pointer-dereference: Fix some wrong pointer dereferences OTP-9194
2011-03-29Fix race in pipe creation. Two simultaneous node starts caused failurePatrik Nyblom
2011-03-25Merge branch 'pan/win_init_restart_oldshell/OTP-9139' into devPatrik Nyblom
* pan/win_init_restart_oldshell/OTP-9139: Add testcase Teach win32/sys.c (fd-driver) not to leak readers causing init:restart to fail Make Erlang build with Latest MS SDK, 7.1 (and VStudio 2010)
2011-03-25Fix two typos in erlsrv log messagesTuncer Ayaz
2011-03-21Make Erlang build with Latest MS SDK, 7.1 (and VStudio 2010)Patrik Nyblom
2011-03-11Update copyright yearsBjörn-Egil Dahlberg
2011-02-28Make crypto.c work with valgrind 3.6 and correct cerl.srcPatrik Nyblom
2011-02-25Teach cerl to handle newer valgrindPatrik Nyblom
2011-02-23Fix some wrong pointer dereferencesCristian Greco
2011-02-18Merge branch 'jp/dependencies_makefile' into devBjörn Gustavsson
* jp/dependencies_makefile: Add dependencies Makefile generation to erlc(1) and compile(3) Conflicts: lib/compiler/test/compile_SUITE.erl OTP-9065
2011-02-18Add dependencies Makefile generation to erlc(1) and compile(3)Jean-Sébastien Pédron
This is useful when a project is built with Makefiles and erlc(1) instead of EMakefiles. Tracking dependencies by hand is error-prone and it becomes painful when using external application headers like EUnit's one. A dependencies Makefile will look like this: module.beam: module.erl \ /usr/local/lib/erlang/lib/eunit-2.1.4/include/eunit.hrl \ header.hrl When included in the main Makefile, 'module' will be recompiled only when needed. GCC offers the same feature and new erlc(1) options are compatible with it. More informations at: http://wiki.github.com/dumbbell/otp/dependencies-makefile
2010-12-03Merge branch 'pan/inet6_corrections/OTP-8969' into devRaimo Niskanen
* pan/inet6_corrections/OTP-8969: Stop using uncertain flags for getaddrinfo() Teach inet_test_lib to understand enetunreach Make windows inet_gethost work for ipv6
2010-12-03Merge branch 'pan/unicode-filenames/OTP-8887' into devPatrik Nyblom
* pan/unicode-filenames/OTP-8887: (27 commits) Test and correct filelib and filename Add documentation to erlang.xml and slight correction to unicode_usage.xml Add section about Unicode file names to stdlib users guide Correct bug in file_name_SUITE making it fail on Unix instead of Windows7 Add documentation about raw filenames and Unicode file name translation mode Make filelib not crash on re codepoints beyond 255 in re when filename is raw Mend on_load_embedded testcase which did not handle windows links Correct testcase regarding windows versions supporting soft links. Teach filelib to use re in unicode mode when filenames are not raw Treat soft links on Windows correctly in file_name_SUITE Adapt new soft and hard link routines on Windos to Unicode Corrected testcases broken by unicode filenames Update preloaded prim_file Teach prim_file not to accept atoms and not to throw exceptions Adapt inet_drv to Visual Studio 2008 Teach spawn_executable about Unicode Convert filenames read on MacOSX to canonical form Teach file to accept codepoints beyond 255. Add testcases Correct shell utilities to handle unicode and possibly binaries ...
2010-12-02Stop using uncertain flags for getaddrinfo()Raimo Niskanen
The AI_V4MAPPED flag is falling out of grace in modern IPv6 stacks, for security reasons, e.g. FreeBSD do not document it any longer. The AI_ADDRCONFIG flag have got unclear semantics on the same OS.
2010-12-01Make windows inet_gethost work for ipv6Patrik Nyblom
2010-12-01Fix format_man_pages so it handles all man sections and remove ↵Lars Thorsen
warnings/errors in man pages
2010-11-30Make Unicode filenames work on WindowsPatrik Nyblom
2010-11-30Correction of VS2008 redistributables locationPatrik Nyblom
2010-11-30Allow installer to take redistributables from VC9Patrik Nyblom
2010-11-29Merge branch 'bw/win32-laa' into devPatrik Nyblom
* bw/win32-laa: Added win32 large address aware link option OTP-8956
2010-11-29Update ct_run deprectaion warning to work properly on windowsLukas Larsson
2010-11-29Update make and install files to use ct_run instead of run_test and to keep ↵Lukas Larsson
a link to run_test available
2010-11-29Add deprication warning to run_test.cLukas Larsson
2010-11-15Merge branch 'dgud/erts/windows-vs10-express' into devDan Gudmundsson
* dgud/erts/windows-vs10-express: Fix manifest files
2010-11-12Fix manifest filesDan Gudmundsson
It seems windows have updated manifest files in VS2010 which caused the erlang programs to contain duplicate requestedExecutionLevel entries, which is not allowed. This patch removes the microsoft entry, before adding our own which is known to work with XP and Vista.
2010-11-09Implement inet:getifaddrs/0 on WindowsRaimo Niskanen
2010-11-02Merge branch 'sf/erts_de_busy_limit' into devRickard Green
* sf/erts_de_busy_limit: Add flag-based setting for the distribution buffer busy limit
2010-11-02Add flag-based setting for the distribution buffer busy limitScott Lystig Fritchie
Id: OTP-8912 This patch creates a new family of flags with the "+z" prefix. It further creates a new configuration option called "dbbl" (which is the first letter of the name dist_buf_busy_limit). Example usage of this flag would be "+zdbbl 1048576". This patch creates an adjustable buffer limit for the amount of data that may be buffered by the erlang distribution code (in dist.c specifically). Before this patch, this hard-coded constant was used: #define ERTS_DE_BUSY_LIMIT (128*1024) When large binaries are transmitted between nodes (or simply a lot of medium-sized binaries), it is very easy to hit the old 128KB limit. Processes that use the erlang:system_monitor() BIF to monitor system events can be spammed by {monitor, busy_dist_port, ...} message tuples at rates of tens to even hundreds of messages/second. A larger buffer limit will allow processes to buffer more outgoing messages over the distribution. When the buffer limit has been reached, sending processes will be suspended until the buffer size has shrunk. The buffer limit is per distribution channel. A higher limit will give lower latency and higher throughput at the expense of higher memory usage. A variation of this patch has been in commercial production use in at least two companies that the author is aware of. Larger buffer values can reduce the number of {monitor, busy_dist_port, ...} system messages drastically, lower overall messaging latencies, and prevent false timeouts and 'nodedown' messages in extremely busy Mnesia systems. Test suite: there are two tests: a. In erlexec_SUITE.erl to test basic set & get of the value b. In distribution_SUITE.erl, to verify that setting +zdbbl very low will actually change behavior.
2010-10-14Merge branch 'ms/security-fixes' into devBjörn Gustavsson
* ms/security-fixes: erlc: remove unused variable typer: prevent buffer overflows run_test: prevent buffer overflow heart: prevent buffer overflow escript: prevent buffer overflows erlexec: prevent buffer overflows erlc: prevent buffer overflows dialyzer: prevent buffer overflows OTP-8892
2010-10-07Incorporate Michael Santos patch for cerl and gdb via emacsPatrik Nyblom
Michael Santos supplied a very nice patch that did set the annotation level correctly for gdb when run from cerl in emacs. The patch adds --annotate=3 to the gdb command line, which makes emacs parse the gdb output correctly, making the right source code be loaded in the emacs buffer. While integrating it, I removed my faulty code trying to do the same with hacky elisp commands. Michaels way is the right way to do it. Thanks!
2010-10-06Added win32 large address aware link optionBlaine Whittle
This link option just sets a flag in the binary and doesn't change OS compatibility. This allows the Erlang VM to use up to 3 gigs of address space instead of the default of 2 gigs.
2010-10-04erlc: remove unused variableMichael Santos
2010-10-04typer: prevent buffer overflowsMichael Santos
2010-10-04run_test: prevent buffer overflowMichael Santos
Truncate buffers used to hold command line arguments.
2010-10-04heart: prevent buffer overflowMichael Santos
2010-10-04escript: prevent buffer overflowsMichael Santos
Check buffer operations on input from escripts, the command line and environment variables.
2010-10-04erlexec: prevent buffer overflowsMichael Santos
Truncate buffer operations on environment variables.
2010-10-04erlc: prevent buffer overflowsMichael Santos
Check buffer operations and increase the size of the buffer used for holding command line arguments, since the "-D" switch will be expanded into 3 arguments when passed to erl.
2010-10-04dialyzer: prevent buffer overflowsMichael Santos
Check length of buffers used with environment variables and debug messages.
2010-09-29Add corrected support for Solaris PTYs to run_erlRyan Tilder
Two related but slightly separate issues: run_erl doesn't support Solaris's /dev/ptmx device and run_erl didn't load the necessary STREAMS modules so that to_erl can provide terminal echo of keyboard input. This patch adds ifdef'd support for Solaris and derivatives to open /dev/ptmx directly since adding the C99 defines to CFLAGS breaks all kinds of other things in the build. It also adds ifdef'd ioctl calls to load the necessary STREAMS modules to permit termios to work.
2010-09-29Fix a typo that leads to syntax errors with DEBUG defined in run_erlRyan Tilder
While attempting to debug odd terminal echo issues on Solaris, I noticed that run_erl.c will fail to compile due to a typo causing a syntax error.
2010-09-04Add scheduler wakup threshold as command line argumentRickard Green
The scheduler wakeup threshold is now possible to adjust at system boot. For more information see the `+swt' command line argument of `erl'.
2010-08-30Merge branch 'sverker/win-virtualization-off/OTP-7405' into devPatrik Nyblom
* sverker/win-virtualization-off/OTP-7405: Teach XP to ignore virtualization part of manifest Turn off windows "virtualiztion"
2010-08-10Merge branch 'rickard/ethread-rewrite/OTP-8544' into devRickard Green
* rickard/ethread-rewrite/OTP-8544: Rewrite ethread library
2010-08-10Rewrite ethread libraryRickard Green
Large parts of the ethread library have been rewritten. The ethread library is an Erlang runtime system internal, portable thread library used by the runtime system itself. Most notable improvement is a reader optimized rwlock implementation which dramatically improve the performance of read-lock/read-unlock operations on multi processor systems by avoiding ping-ponging of the rwlock cache lines. The reader optimized rwlock implementation is used by miscellaneous rwlocks in the runtime system that are known to be read-locked frequently, and can be enabled on ETS tables by passing the `{read_concurrency, true}' option upon table creation. See the documentation of `ets:new/2' for more information. The ethread library can now also use the libatomic_ops library for atomic memory accesses. This makes it possible for the Erlang runtime system to utilize optimized atomic operations on more platforms than before. Use the `--with-libatomic_ops=PATH' configure command line argument when specifying where the libatomic_ops installation is located. The libatomic_ops library can be downloaded from: http://www.hpl.hp.com/research/linux/atomic_ops/ The changed API of the ethread library has also caused modifications in the Erlang runtime system. Preparations for the to come "delayed deallocation" feature has also been done since it depends on the ethread library. Note: When building for x86, the ethread library will now use instructions that first appeared on the pentium 4 processor. If you want the runtime system to be compatible with older processors (back to 486) you need to pass the `--enable-ethread-pre-pentium4-compatibility' configure command line argument when configuring the system.
2010-07-30Fix libm linking with --as-needed flagBjörn-Egil Dahlberg
When building with "--as-needed" linker flags on Linux the build will fail. This has now been fixed.
2010-07-23Teach XP to ignore virtualization part of manifestPatrik Nyblom
ld.sh built files not executable on XP, as parts of the manifest were incomprehensible for XP machines.
2010-07-22Turn off windows "virtualiztion"Sverker Eriksson