aboutsummaryrefslogtreecommitdiffstats
path: root/erts
AgeCommit message (Collapse)Author
2011-05-10Replace io_list_len() with erts_iolist_size()Björn Gustavsson
The io_list_len() function returns an int, where a negative return value indicates a type error. One problem is that an int only consists of 32 bits in a 64-bit emulator. Changing the return type to Sint will solve that problem, but in the 32-bit emulator, a large iolist and a iolist with a type error will both return a negative number. (Noticed by Jon Meredith.) Another problem is that for iolists whose total size exceed the word size, the result would be truncated, leading to a subsequent buffer overflow and emulator crash. Therefore, introduce the new erts_iolist_size() function which returns a status indication and writes the result size through a passed pointer. If the result size does not fit in a word, return an overflow indication.
2011-05-09Fix faulty values from erlang:memory() on halfword-vmSverker Eriksson
Use of Uint instead of UWord could cause overflow errors on systems with large memory use.
2011-05-09Allow allocator disable for high memory (better valgrind for halfword)Sverker Eriksson
2011-05-09Expand the use of high memory allocation in halfword emulatorSverker Eriksson
Also add 'low' field in system_info(allocator) SHORT_LIVED is still in low memory
2011-05-09Merge branch 'egil/file-write/OTP-9276' into devBjörn-Egil Dahlberg
* egil/file-write/OTP-9276: Update prim_file.beam Remove unnecessary copy in prim_file:drv_command/3
2011-05-06ETS usage of erts_printf %RSverker Eriksson
2011-05-06erts_printf %R for relative ets-terms in halfword-vmSverker Eriksson
Conflicts: erts/emulator/beam/erl_printf_term.c
2011-05-06Another halfword is_same-bug for ETS ordered_setSverker Eriksson
This one is less likely to provoke error as one of the terms is always NULL-based.
2011-05-06Update prim_file.beamBjörn-Egil Dahlberg
2011-05-06Remove unnecessary copy in prim_file:drv_command/3Björn-Egil Dahlberg
2011-05-06Make port_command/2 reject non-byte sized bitstringsBjörn Gustavsson
Also rename the fun_to_port/1 test case to outputv_errors/1 and test sending more kinds of bad data to an outputv-enabled driver.
2011-05-06Merge branch 'jf/run_erl-disable-flow-control' into devHenrik Nord
* jf/run_erl-disable-flow-control: Teach run_erl RUN_ERL_DISABLE_FLOWCNTRL for disabling flow control OTP-9270
2011-05-06io.c: Make io_list_vec_len() less generalBjörn Gustavsson
io_list_vec_len() is slightly more general than it needs to be. Specifically: * The only caller always passes ERL_SMALL_IO_BIN_LIMIT as the value for the bin_limit parameter, so the bin_limit parameter can be eliminated. * The only caller never passes any NULL pointers, so there is no need test the pointers before writing through them.
2011-05-06Merge branch 'ta/inet_drv-cleanup' into devHenrik Nord
* ta/inet_drv-cleanup: inet_drv: remove unused tcp request id inet_drv: remove gratuitous assignment OTP-9263
2011-05-06Merge branch 'ms/beam-fix-format-specifiers-in-erl_exit-msg' into devHenrik Nord
* ms/beam-fix-format-specifiers-in-erl_exit-msg: Fix format specifiers in erl_exit messages OTP-9262
2011-05-05Merge branch 'maint-r14' into devSverker Eriksson
Conflicts: erts/vsn.mk
2011-05-04iolist_size/1: Fix truncation of resultBjörn Gustavsson
iolist_size/1 would silently return a truncated result for iolists whose size exceeded the word size. For example: iolist(lists:duplicate(256, <<0:(1 bsl 24)/unit:8>>)). would return 0 (instead of 4294967296 or 1 bsl 32). Rewrite iolist_size/1 to accumulate the size in a bignum if necessary and result the correct result.
2011-05-04Test iolist_size/1 with bad argumentsBjörn Gustavsson
2011-05-04binary_SUITE: Remove workaround for avoiding stack overflowBjörn Gustavsson
In older releases of Erlang/OTP, the '=:=' operator could run out of stack if used to compare very deep lists. Since that problem has been fixed, we can remove the workaround used in the deep/1 test case.
2011-05-04Prepare releaseErlang/OTP
2011-05-04Fix bug in halfword emulator causing ets:select_delete on ordered_set to crashSverker Eriksson
2011-05-02Teach run_erl RUN_ERL_DISABLE_FLOWCNTRL for disabling flow controlJonas Faklkevik
Flow control can cause unwanted behaviour of the beam process, if accidentally hit Ctrl-S (instead of Ctrl-D to detach) the entire beam may be blocked. Fix this problem by making it possible to turn off flow control by setting the environment variable RUN_ERL_DISABLE_FLOWCNTRL.
2011-05-02Merge branch 'ta/driver_entry-typo' into devHenrik Nord
* ta/driver_entry-typo: driver_entry: Remove gratuitous paren and fix typo OTP-9254
2011-05-02inet_drv: remove unused tcp request idTuncer Ayaz
2011-05-02inet_drv: remove gratuitous assignmentTuncer Ayaz
2011-04-29Merge branch 'ks/prim_file-fixes' into devHenrik Nord
* ks/prim_file-fixes: add prim_file.beam Driver names should be strings, not atoms Cleanup and cosmetic changes OTP-9253
2011-04-29Merge branch 'ms/unsigned-integer-overflow-in-error' into devHenrik Nord
* ms/unsigned-integer-overflow-in-error: Unsigned integer may overflow in error message OTP-9251
2011-04-28Merge branch 'ms/file-fix-hang-reading-compressed-files' into devHenrik Nord
* ms/file-fix-hang-reading-compressed-files: file: fix hang reading compressed files OTP-9245
2011-04-27Merge branch 'sverker/code_SUITE-false_dependency-bug' into devSverker Eriksson
* sverker/code_SUITE-false_dependency-bug: Fix bug in test case code_SUITE:false_dependency
2011-04-27Merge branch 'sverker/enif_is_exception/OTP-9150' into devSverker Eriksson
* sverker/enif_is_exception/OTP-9150: add support for checking if an ERL_NIF_TERM is an exception
2011-04-27Merge branch 'sverker/erts_printf-halfword' into devSverker Eriksson
* sverker/erts_printf-halfword: erts_printf %be to print integers of size Eterm Fix use of type BeamInstr in hipe_debug.c Conflicts: erts/emulator/hipe/hipe_debug.c
2011-04-27add prim_file.beamHenrik Nord
2011-04-27Driver names should be strings, not atomsKostis Sagonas
2011-04-27Cleanup and cosmetic changesKostis Sagonas
2011-04-26driver_entry: Remove gratuitous paren and fix typoTuncer Ayaz
2011-04-15Merge branch 'ms/heart-rem-garbage-append' into devHenrik Nord
* ms/heart-rem-garbage-append: heart: remove garbage appended to heart command OTP-9224
2011-04-14Merge branch 'maint-r14' into devSverker Eriksson
Conflicts: erts/vsn.mk
2011-04-14Merge branch 'hw/fix-epmd-perror' into devHenrik Nord
* hw/fix-epmd-perror: Fix epmd's dbg_perror() output OTP-9223
2011-04-12Merge branch 'dev' into bmk/inets/inet56_integrationMicael Karlberg
2011-04-12Merge branch 'bjorn/erts/remove-init_get_args-doc/OTP-9209' into devBjörn Gustavsson
* bjorn/erts/remove-init_get_args-doc/OTP-9209: Remove documentation for non-existent init:get_args/0
2011-04-11Prepare releaseErlang/OTP
2011-04-11Merge branch 'rickard/process-status/OTP-9197' into maint-r14Erlang/OTP
* rickard/process-status/OTP-9197: Fix thread unsafe access Fix lost wakeup when process garbage collected by other Only set status P_WAITING when needed Add testcase for process_info() badarg bug
2011-04-11Avoid scheduling of processes being garbage collected by othersRickard Green
2011-04-11Fix thread unsafe accessRickard Green
Fix thread unsafe access to process status field introduced in OTP-9125.
2011-04-11Fix lost wakeup when process garbage collected by otherRickard Green
2011-04-11Only set status P_WAITING when neededRickard Green
The status of a process was unnecessarily set to waiting before the process was enqueued in a run queue. This bug was harmless up until OTP-R14B01. In OTP-R14B02 erlang:hibernate/3 was fixed (OTP-9125). After the introduction of OTP-9125, the previously harmless process status bug sometimes caused erroneous badarg exceptions from process_info().
2011-04-11Remove documentation for non-existent init:get_args/0Björn Gustavsson
init:get_args/0 was deprecated in R9C and removed in R12B. Reported-by: Eric Pailleau
2011-04-08Merge branch 'ms/epmd-local-access-check' into devHenrik Nord
* ms/epmd-local-access-check: epmd: include host address in local access check OTP-9214
2011-04-08Merge branch 'hw/epmd-bind-to-address' into devHenrik Nord
* hw/epmd-bind-to-address: Allow user to specify the IP address epmd binds to OTP-9213
2011-04-07Remove truncation error in key comparision for ordered setPatrik Nyblom