aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam
AgeCommit message (Collapse)Author
2013-06-12Update copyright yearsBjörn-Egil Dahlberg
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-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 'rickard/stale-driver-select/OTP-11084' into maintRickard Green
* rickard/stale-driver-select/OTP-11084: Fix crash when reporting stale driver select
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: 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: Rename allocator aoffcbf to aoffcaobfSverker Eriksson
and add documentation in erts_alloc
2013-06-03erts: Remove unnecessary flag arguments in allocatorsSverker Eriksson
A cleanup after SBMBC was removed.
2013-06-03erts: Remove SBMBC allocatorSverker Eriksson
2013-06-03erts: Add test for add_mbc and remove_mbc callbacksSverker Eriksson
2013-06-03erts: Fix deallocation in removed carrierSverker Eriksson
2013-06-03erts: Change naive list to rb-tree of carriers in AOFF allocatorSverker Eriksson
and add new callbacks add_mbc(), remove_mbc() and largest_fblk_in_mbc() for carrier migration.
2013-06-03erts: Prepare aoff allocator for carrier migrationSverker Eriksson
by putting blocks from different carrier into separate search trees. Carriers are currently organized in a naive linked list by address order.
2013-06-03erts: Make carrier header sizes customizableSverker Eriksson
This is a modified partial revert of 2ab1d972f6fd37c17b05
2013-06-03erts: Add "bestfit within carrier" for aoff allocator (aoffcbf)Sverker Eriksson
2013-05-31Merge branch 'lukas/erts/gc_stat_contention/OTP-10271' into maintLukas Larsson
* lukas/erts/gc_stat_contention/OTP-10271: Replace gc stat lock with sched spec data
2013-05-31Replace gc stat lock with sched spec dataLukas Larsson
2013-05-30Merge branch 'rickard/ptab-id-alloc/OTP-11077' into maintRickard Green
* rickard/ptab-id-alloc/OTP-11077: Introduce a better id allocation algorithm for PTabs
2013-05-22Merge branch 'sverk/win64-fixes' into maintSverker Eriksson
* sverk/win64-fixes: erts: Change some more 'long' to pointer sized int (ErlDrvUInt) erts: Fix crash in nif_SUITE for win64 erts: Fix assert in isdigit for negative characters
2013-05-22Merge branch 'lukas/erts/process_memory_crash_dump/OTP-11098' into maintLukas Larsson
* lukas/erts/process_memory_crash_dump/OTP-11098: Bump crash dump version
2013-05-21Bump crash dump versionLukas Larsson
2013-05-17Introduce a better id allocation algorithm for PTabsRickard Green
2013-05-16Merge branch 'rickard/frmptr' into maintRickard Green
* rickard/frmptr: Add 'frmptr' emulator type Conflicts: erts/preloaded/ebin/erlang.beam
2013-05-16Merge branch 'rickard/nosuspend/OTP-11076' into maintRickard Green
* rickard/nosuspend/OTP-11076: Only verify not busy for erlang:send(Port, Msg, [nosuspend]) until scheduled
2013-05-16Merge branch 'rickard/inet_db/OTP-11074' into maintRickard Green
* rickard/inet_db/OTP-11074: Do not treat port_set_data/port_get_data as signals Conflicts: erts/preloaded/ebin/erlang.beam erts/preloaded/ebin/erts_internal.beam
2013-05-16Merge branch 'lukas/erts/process_memory_crash_dump/OTP-11098' into maintLukas Larsson
* lukas/erts/process_memory_crash_dump/OTP-11098: Print process memory usage info in crash dump
2013-05-16Merge branch 'lukas/erts/nodes_rwlock_contentions/OTP-11097' into maintLukas Larsson
* lukas/erts/nodes_rwlock_contentions/OTP-11097: Change rwlock to rlock where possible
2013-05-16Change rwlock to rlock where possibleLukas Larsson
Having rwlock could cause high unneccesary contention on the dist table when calling erlang:nodes() from many schedulers at the same time.
2013-05-13Print process memory usage info in crash dumpLukas Larsson
2013-05-12Use _DARWIN_UNLIMITED_SELECT in erl_pollAnthony Ramine
This allows erl_poll to select() on file descriptors greater than FD_SETSIZE (1024) on Darwin. The fd sets are manually (re)allocated and freed.