aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator
AgeCommit message (Collapse)Author
2013-07-11Merge branch 'jw/fix-float-middle-endian/OTP-11201' into maintFredrik Gustafsson
* jw/fix-float-middle-endian/OTP-11201: Fix binary construction on floating point middle-endian machines Fix binary matching on floating point middle-endian machines Fix erlang:phash2() on floating point middle-endian machines Fix external term format BIFs on floating point middle-endian machines
2013-07-10Merge branch 'rickard/info/OTP-11196' into maintRickard Green
* rickard/info/OTP-11196: Add test cases for native atomics and jump table Refuse to build SMP runtime by default without native atomics Make information about use of jump table available via system_info BIF Make ethread library information available via system_info BIF Make emulator arguments available via the system_info BIF
2013-07-10Add test cases for native atomics and jump tableRickard Green
2013-07-09Make information about use of jump table available via system_info BIFRickard Green
erlang:system_info(beam_jump_table)
2013-07-09Make ethread library information available via system_info BIFRickard Green
erlang:system_info(ethread_info)
2013-07-09Make emulator arguments available via the system_info BIFRickard Green
erlang:system_info(emu_args)
2013-06-20Merge branch 'sverk/crypto-remove-ec-resource' into maintSverker Eriksson
* sverk/crypto-remove-ec-resource: crypto: Supress some false positives from valgrind crypto: Refactor remove resource for EC_KEY crypto: Fix some compiler warnings
2013-06-20Merge branch 'sverk/aoffcbf' into maintSverker Eriksson
* sverk/aoffcbf: erts: Make aoffcbf default when migration is enabled erts: Add new allocator strategy aoffcbf OTP-11174
2013-06-19erts: Make aoffcbf default when migration is enabledSverker Eriksson
2013-06-19erts: Add new allocator strategy aoffcbfSverker Eriksson
with better performance than aoffcaobf as we don't have to rearrange the search tree when there are blocks of equal size.
2013-06-14erts: Fix memory leak in term_to_binary/2 with compressed optionSverker Eriksson
2013-06-14Fix binary construction on floating point middle-endian machinesJohannes Weißl
This complements 933e701 (OTP-10209). Without this patch the test cases "in_guard/1" and "coerce_to_float/1" in bs_construct_SUITE fail. The added lines in bs_construct_SUITE cover all branches that were not covered before (small and big numbers if BIT_OFFSET(erts_bin_offset) != 0).
2013-06-14Fix binary matching on floating point middle-endian machinesJohannes Weißl
This complements 933e701 (OTP-10209). Without this patch the test case "bs_match_misc_SUITE:t_float/1" fails. Simple error example: 1> <<_,_,_,_,_,_,_,_>> = <<1.25/float>>. <<63,244,0,0,0,0,0,0>> 2> <<1.25/float>> = <<63,244,0,0,0,0,0,0>>. ** exception error: no match of right hand side value <<63,244,0,0,0,0,0,0>> The additional test case is added because in a former version of this patch the ERTS_FP_ERROR_THOROUGH check for NaN/infinity was mistakenly applied on the still word-switched double.
2013-06-14Fix erlang:phash2() on floating point middle-endian machinesJohannes Weißl
This complements 933e701 (OTP-10209). Without this patch the test case "hash_SUITE:test_phash2/1" fails. Simple error example: 1> 77147068 = erlang:phash2(1.0). ** exception error: no match of right hand side value 50524433
2013-06-14Fix external term format BIFs on floating point middle-endian machinesJohannes Weißl
This complements 933e701 (OTP-10209). Simple error example: 1> <<131,70,63,240,0,0,0,0,0,0>> = term_to_binary(1.0, [{minor_version,1}]). ** exception error: no match of right hand side value <<131,70,0,0,0,0,63,240,0,0>> 2> 1.0 = binary_to_term(<<131,70,63,240,0,0,0,0,0,0>>). ** exception error: no match of right hand side value 5.299808824e-315 But roundtrip always works: 3> 1.0 = binary_to_term(term_to_binary(1.0, [{minor_version,1}])). 1.0
2013-06-12Update copyright yearsBjörn-Egil Dahlberg
2013-06-12crypto: Supress some false positives from valgrindSverker Eriksson
2013-06-12Merge branch 'rickard/+sfwi/OTP-11164' into maintRickard Green
* rickard/+sfwi/OTP-11164: erts: Add the +sfwi system flag
2013-06-11erts: Add the +sfwi system flagRickard Green
+sfwi Interval Set scheduler forced wakeup interval. All run queues will be scanned each Interval milliseconds. While there are sleeping schedulers in the system, one scheduler will be woken for each non-empty run queue found. An Interval of zero disables this feature, which also is the default. This feature has been introduced as a temporary workaround for lengthy executing native code, and native code that do not bump reductions properly in OTP. When these bugs have be fixed the +sfwi flag will be removed.
2013-06-11Merge branch 'pan/happi/yield_in_term_to_binary' into maintOTP_R16B01_RC1Patrik Nyblom
* pan/happi/yield_in_term_to_binary: Add testcase to stress extra_root term_to_binary: Remove debug code and set production trap levels Teach erl_gc:offset_rootset about extra_root Teach external.c to handle reallocs before compression Make all steps ofterm_to_binary work in chunks and yield Make term_to_binary yield (trap). OTP-11163
2013-06-11Add testcase to stress extra_rootPatrik Nyblom
2013-06-10term_to_binary: Remove debug code and set production trap levelsPatrik Nyblom
2013-06-10Merge branch 'rickard-sverker/carrier-migration/OTP-10279' into maintRickard Green
* rickard-sverker/carrier-migration/OTP-10279: erts: Fix warning erts: Fix management of redirected carrier to deallocate
2013-06-10Merge branch 'sverk/darwin-unlimited-select' into maintSverker Eriksson
* sverk/darwin-unlimited-select: erts: Fix dynamic select for darwin erts: Refactor unlimited select patch erts: Fix bug in unlimited fd_set patch Use _DARWIN_UNLIMITED_SELECT in erl_poll
2013-06-10Merge branch 'rickard/stale-driver-select/OTP-11084' into maintRickard Green
* rickard/stale-driver-select/OTP-11084: Fix bad fix of erts_stale_drv_select()
2013-06-10Fix bad fix of erts_stale_drv_select()Rickard Green
2013-06-10erts: Fix debug code in erts_ptab_test_next_id()Rickard Green
2013-06-10erts: Fix warningRickard Green
2013-06-10erts: Fix management of redirected carrier to deallocateRickard Green
2013-06-06Teach erl_gc:offset_rootset about extra_rootPatrik Nyblom
2013-06-05Teach external.c to handle reallocs before compressionPatrik Nyblom
2013-06-05Merge branch 'pan/unicode_error_wrong_offset' into maintPatrik Nyblom
* pan/unicode_error_wrong_offset: Fix faulty rest on error in unicode:characters_to_list OTP-11080
2013-06-05Merge branch 'pan/r16b01/system_monitor_long_schedule/OTP-11067' into maintPatrik Nyblom
* pan/r16b01/system_monitor_long_schedule/OTP-11067: Minor spelling correction Add system_monitor of long_schedule
2013-06-05Merge branch 'pan/win_now_jumps' into maintPatrik Nyblom
* pan/win_now_jumps: Enable use of GetTickCoun64 when available Intermediate code with lock on gettickcount() Tmp OTP-11146
2013-06-05Make all steps ofterm_to_binary work in chunks and yieldPatrik Nyblom
Rewrite and extend of Happi's initial work Extra_root to process structure to enable GC of state - Changed the process structure to point to a separate struct, the struct also contains a destructor function to allow for proper cleanup. Rewrote encode_size_struct and enc_term to have internal versions with reduction counters which will result in interrupt for later restart when the counter reaches zero - removed the EWA_STACK from Happis version and directly save the ESTACK's and WSTACK's in the above mentioned struct (or array thereof) that are pointed out from the process structure. The destructor will take care of the deallocation in case of process death. Added ESTACK and WSTACK macros to save and restore stack and to change allocator, which makes the previously mentioned stack-save work. Rewrote enc_term to not store pointers on the stack, and use one WSTACK for commands etc and another ESTACK for Eterms - Slightly different than Happis version to make halfword code simpler. Rewrote encode_size_struct2 so that it does not store pointers on the stack, also switched to ESTACK instead of WSTACK, this also handles halfword correctly. Added interfaces for chunkwise compression, that are used from term_to_binary/2 when the compressed option is given.
2013-06-04Make term_to_binary yield (trap).happi
2013-06-04Merge branch 'sverk/pwrite-bug' into maintSverker Eriksson
* sverk/pwrite-bug: kernel: Fix bug in file:pwrite for large data sets
2013-06-04Merge branch 'rickard/stale-driver-select/OTP-11084' into maintRickard Green
* rickard/stale-driver-select/OTP-11084: Fix crash when reporting stale driver select
2013-06-04Merge branch 'rickard-sverker/carrier-migration/OTP-10279' into maintRickard Green
* rickard-sverker/carrier-migration/OTP-10279: erts: Document the +M<S>acul command line argument erts: Carrier pool information in allocator information erts: Use carrier pool for migration of carriers erts: Implement test case for carrier pool erts: Implement carrier pool erts: Fix type errors in info functions erts: Use Uint64 for call counts erts: Fix failing testcase alloc_SUITE:rbtree erts: Rename allocator aoffcbf to aoffcaobf erts: Remove unnecessary flag arguments in allocators erts: Remove SBMBC allocator erts: Add test for add_mbc and remove_mbc callbacks erts: Fix deallocation in removed carrier erts: Change naive list to rb-tree of carriers in AOFF allocator erts: Prepare aoff allocator for carrier migration erts: Make carrier header sizes customizable erts: Add "bestfit within carrier" for aoff allocator (aoffcbf)
2013-06-04erts: Carrier pool information in allocator informationRickard Green
That is, include information about carrier pool in result returned from erlang:system_info({allocator,allocator_sizes, _}).
2013-06-04erts: Use carrier pool for migration of carriersRickard Green
2013-06-04erts: Fix dynamic select for darwinSverker Eriksson
Make sure the fd-sets (read and write) are of equal size.
2013-06-04erts: Implement test case for carrier poolRickard Green
2013-06-04erts: Implement carrier poolRickard Green
2013-06-04erts: Fix type errors in info functionsRickard Green
2013-06-04erts: Use Uint64 for call countsRickard Green
2013-06-03erts: Fix failing testcase alloc_SUITE:rbtreeSverker Eriksson
2013-06-03Merge branch 'lukas/r16b01/testcase-fixes/OTP-11138' into maintLukas Larsson
* lukas/r16b01/testcase-fixes/OTP-11138: Do not fail if there is no variables file Run iter max ports on a seperate vm with smaller port table Set max ports for slave node Decrease sleep timer
2013-06-03Merge branch 'nox/erl_eval-receive/OTP-11137' into maintFredrik Gustafsson
* nox/erl_eval-receive/OTP-11137: Updated primary bootstrap for erl_eval Added preloaded prim_eval Fix receive support in erl_eval with a BEAM module
2013-06-03erts: Rename allocator aoffcbf to aoffcaobfSverker Eriksson
and add documentation in erts_alloc