aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel
AgeCommit message (Collapse)Author
2016-09-14Tune 'tclass' semanticsRaimo Niskanen
2016-09-12Implement IPV6_TCLASSRaimo Niskanen
2016-09-08Fix incorrect priv_dir when adding app's ebin directory to pathPeter Andersson
2016-09-07Merge branch 'tuncer/kernel/on_load-error-string/PR-1155'Björn Gustavsson
* tuncer/kernel/on_load-error-string/PR-1155: Print on_load error in a more useful style
2016-09-06Merge branch 'maint'Hans Bolinder
* maint: kernel: Correct file(3)
2016-09-06kernel: Correct file(3)Hans Bolinder
2016-09-05Merge branch 'maint'Lukas Larsson
2016-09-05Merge branch 'lukas/kernel/os_cmd_fix_stdin_close/OTP-13867' into maintLukas Larsson
* lukas/kernel/os_cmd_fix_stdin_close/OTP-13867: kernel: Close stdin of commands run in os:cmd
2016-09-05Merge branch 'maint'Lukas Larsson
2016-09-05Merge branch 'lukas/kernel/fix_os_SUITE_message_leak_testcase/OTP-13867' ↵Lukas Larsson
into maint * lukas/kernel/fix_os_SUITE_message_leak_testcase/OTP-13867: kernerl: Remove infinite loop from testcase
2016-09-02kernel: Close stdin of commands run in os:cmdLukas Larsson
This is needed when running programs that only exit when stdin has been closed, e.g. 'more'.
2016-09-02Merge branch 'maint'Hans Bolinder
* maint: doc: Correct errors introduced by Editorial changes
2016-09-01doc: Correct errors introduced by Editorial changesHans Bolinder
Fix some older errors as well.
2016-09-01Merge branch 'maint'Hans Bolinder
* maint: Fix xmllint-warnings
2016-08-31Print on_load error in a more useful styleTuncer Ayaz
When printing the error term from on_load, insert a newline because the term is never short and will produce hard to read/copy output that is just hanging off to the right.
2016-08-31Fix xmllint-warningsHans Bolinder
2016-08-31kernerl: Remove infinite loop from testcaseLukas Larsson
We don't want the infinite loop as it leaks after the test finished.
2016-08-29Merge branch 'maint'Rickard Green
* maint: Fix tracing of processes executing dirty Perform check_process_code while process is executing dirty Fix purge of code Reclaim literal area after purge has completed Separate literal area from code Conflicts: erts/emulator/beam/global.h
2016-08-29Merge branch 'rickard/ds-purge-module/OTP-13808' into maintRickard Green
* rickard/ds-purge-module/OTP-13808: Perform check_process_code while process is executing dirty Conflicts: erts/doc/src/erl_nif.xml
2016-08-29Merge branch 'rickard/fun-purge-bug/OTP-13809' and ↵Rickard Green
'rickard/new-purge-strategy/OTP-13833' into maint * rickard/fun-purge-bug/OTP-13809: Fix purge of code Reclaim literal area after purge has completed Separate literal area from code Conflicts: erts/doc/src/erlang.xml erts/emulator/beam/beam_bif_load.c erts/emulator/beam/erl_init.c erts/preloaded/ebin/init.beam
2016-08-29Perform check_process_code while process is executing dirtyRickard Green
2016-08-29Fix purge of codeRickard Green
Ensure that we cannot get any dangling pointers into code that has been purged. This is done by a two phase purge. At first phase all fun entries pointing into the code to purge are marked for purge. All processes trying to call these funs will be suspended and by this we avoid getting new direct references into the code. When all processes has been checked, these processes are resumed. The new purge strategy now also completely ignore the existence of indirect references to the code (funs). If such exist, they will cause bad fun exceptions to the caller, but will not prevent a soft purge or cause a kill of a process having such live references during a hard purge. This since it is impossible to give any guarantees that no processes in the system have such indirect references. Even when the system is completely clean from such references, new ones can appear via distribution and/or disk.
2016-08-26Merge branch 'g-andrade/kernel/fetch_ztream_dictionary/PR-1139/OTP-13842'Lukas Larsson
* g-andrade/kernel/fetch_ztream_dictionary/PR-1139/OTP-13842: Update preloaded modules Specify min zlib ver on inflateGetDictionary doc Skip inflateGetDictionary test case if unsupported zlib: Only link inflateGetDictionary if available zlib: Add test case for inflateGetDictionary zlib: support extraction of inflation dictionary
2016-08-26Reclaim literal area after purge has completedRickard Green
2016-08-25Replace usage of deprecated time unitsRickard Green
2016-08-22Skip inflateGetDictionary test case if unsupportedGuilherme Andrade
2016-08-19Merge branch 'sverker/net_kernel-setopts/OTP-13564' into maintSverker Eriksson
2016-08-17Merge branch 'maint-19' into maintLukas Larsson
* maint-19: Updated OTP version Prepare release erts: Make sure to flush potential exit message
2016-08-16Prepare releaseErlang/OTP
2016-08-16erts: Make sure to flush potential exit messageLukas Larsson
2016-08-15kernel: Document net_kernel:getopts and setoptsSverker Eriksson
2016-08-15kernel: Add erl_distribution_SUITE:setoptsSverker Eriksson
to test net_kernel:setopts and getopts.
2016-08-15kernel: Accept and convert old hs_data recordSverker Eriksson
2016-08-15kernel: Add net_kernel:setopts/2 and getopts/2Sverker Eriksson
2016-08-12Merge branch 'lukas/erts/fix_init_stop_code_load_race/OTP-13802' into maintLukas Larsson
* lukas/erts/fix_init_stop_code_load_race/OTP-13802: erts/kernel: Fix code loading deadlock during init:stop
2016-08-12erts/kernel: Fix code loading deadlock during init:stopLukas Larsson
When init:stop is called it walks the application hierarchy and terminates each process. Some of these processes may do something while terminating and sometimes that something needs to load some new code in order to work. When this happens the code_server could just be in the process of terminating or the erl_prim_loader could be active. In both these cases the request to load the new code would cause a deadlock in the termination of the system. This commit fixes this by init rejecting attempts to load new code when init:stop has been called and fixing a termination race in the code_server. This however means that the process that tried to do something when told to terminate (for instance logging that it is terminating) will crash instead of loading the code.
2016-08-11kernel: Export inet types socket_getopt and socket_setoptSverker Eriksson
2016-08-11kernel: Refactor dist_util:con_loopSverker Eriksson
by separating the constant values into tuple ConData. and that exposed the fact that TcpAddress and MyNode where not used.
2016-08-11kernel: Cleanup code with fancy record syntaxSverker Eriksson
2016-08-09zlib: Add test case for inflateGetDictionaryGuilherme Andrade
2016-08-09Merge branch 'maint-19' into maintLukas Larsson
Conflicts: lib/ssl/src/ssl.appup.src
2016-08-08Prepare releaseErlang/OTP
2016-08-08kernel: Use ^D as eot for os:cmd on unix platformsLukas Larsson
This is needed as doing only an 'exit' will only exit the program, but any children started in the program that have stdout/stderr still open will keep the port open until they terminate. i.e. os:cmd("while true; do echo sleep 1; sleep 1; done&"). would block os:cmd forever because the while loop keeps its copies of stdout/stderr open forever. It could be argued that this is correct behaviour, and it is the way it works on windows, but changing this breaks backwards compatability for os:cmd which is not acceptable.
2016-08-01Merge branch 'raimo/SCTP-socket-stats/ERL-102/OTP-13773' into maintRaimo Niskanen
* raimo/SCTP-socket-stats/ERL-102/OTP-13773: Fix SCTP send stats in inet_drv Test inet:getstat/1 dead for SCTP send Fix test suite compilation warnings
2016-07-28Test inet:getstat/1 dead for SCTP sendRaimo Niskanen
2016-07-28Fix test suite compilation warningsRaimo Niskanen
2016-07-26Merge branch 'okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771' into maintBjörn-Egil Dahlberg
* okumin/kernel/remove-duplicated-line/PR-1119/OTP-13771: Remove a duplicated pattern matching in erl_epmd.erl
2016-07-26Merge branch 'lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770' into ↵Björn-Egil Dahlberg
maint * lemenkov/kernel/fix-register_ipv6_epmd/PR-1129/OTP-13770: Respect -proto_dist switch while connection to EPMD
2016-07-17Respect -proto_dist switch while connection to EPMDPeter Lemenkov
Signed-off-by: Peter Lemenkov <[email protected]>
2016-07-14Fix code_server crash when adding some code paths ERL-194Ignacio Martínez