aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel
AgeCommit message (Collapse)Author
2014-07-10Prepare releaseErlang/OTP
2014-07-10Merge branch 'nox/filelib-wildcard-broken-link' into maint-17Erlang/OTP
* nox/filelib-wildcard-broken-link: Update stdlib appup file Update runtime dependencies Update preloaded Add tests of filelib and symlinks Fix handling of broken symlinks in filelib Conflicts: erts/preloaded/ebin/erl_prim_loader.beam
2014-07-09Update runtime dependenciesSiri Hansen
2014-07-09Add tests of filelib and symlinksSiri Hansen
This commit complements 769996c0cd4cb68c157e39de725642f209ed7423 and adds tests for the following problems introduced by f11aabdc9fec593c31e6c4f3fa25c1707e9c35df: Given the symlink 'dirlink' pointing to an existing dir, then - filelib:is_regular("dirlink") -> false - filelib:is_dir("dirlink") -> false Given the symlink 'filelink' pointing to an existing file, then - filelib:is_regular("filelink") -> false - filelib:is_file("filelink") -> false - filelib:last_modified("filelink") and filelib:filesize("filelink") return the info of the link and not the file Given the symlink "broken_symlink" pointing to a non-existing file, then - filelib:wildcard("broken_symlink",File) -> []
2014-07-09Fix handling of broken symlinks in filelibAnthony Ramine
This fixes a bug introduced in f11aabdc9fec593c31e6c4f3fa25c1707e9c35df where filelib:eval_read_file_info/2 was made to use file:read_link_info/1 to never follow symlinks. This fixed wildcard/1 but broke every other function using eval_read_file_info/2. Reported-by: Louis-Philippe Gauthier Reported-by: Danil Zagoskin
2014-06-19Prepare releaseErlang/OTP
2014-06-17Merge branch 'bjorn/kernel/remove-file_info-vestiges/OTP-11982' into maintBjörn Gustavsson
* bjorn/kernel/remove-file_info-vestiges/OTP-11982: Remove documentation and stub for non-exist file:file_info/1
2014-06-13Remove documentation and stub for non-exist file:file_info/1Björn Gustavsson
file:file_info/1 was removed a long time ago, but its documentation was not removed.
2014-06-12Allow unsticking pre-loaded modulesBjörn Gustavsson
Commit ed06dd12ea74018b902a2c4c7924313d23cedb75 made pre-loaded modules (such as erlang) sticky, and also made it impossible to unstick them to prevent them from ever be reloaded. It turns out that there are tools that may want to instrument the erlang module (such as concuerror), so making it impossible to unstick modules is harsh. Therefore, revert the part of the commit that prevented unsticking the pre-loaded modules.
2014-06-04Make pre-loaded modules permanently stickyBjörn Gustavsson
Modules in the kernel, stdlib, and compiler applications are by default "sticky", meaning that the code server will refuse to re-load them. The pre-loaded modules (those that are part of the run-time system itself, such as 'erlang') are, however, not sticky. They used to be sticky a long time ago when the pre-loaded modules were part of the kernel application. Now they are part of the erts application. Since re-loading a pre-loaded module can be catastrophic (especially re-loading the 'erlang' module), the pre-loaded modules must be sticky. Furthermore, it should not be allowed to unstick them. The sticky_dir/1 test case in code_SUITE is never actually run and is broken. Rewrite it.
2014-05-26application_SUITE: Clean up the code after the test is doneBjörn Gustavsson
2014-05-26Teach code:del_path/1 to ignore superfluous slashesBjörn Gustavsson
The following sequence will NOT leave the code path unchanged: code:add_path("/some/app/"), . . . code:del_path("/some/app/") The reason is that code:add_path/1 will normalize the path name (removing the trailing slash), while code:del_path/1 does not normalize the path before searching for it in the code path.
2014-05-14Merge branch 'dz/inet_getstat_doc_typo_fix' into maintMarcus Arendt
* dz/inet_getstat_doc_typo_fix: inet: fix typo in inet:getstat/2 doc
2014-05-12Merge branch 'egil/fix-erts_debug-size/OTP-11923' into maintBjörn-Egil Dahlberg
* egil/fix-erts_debug-size/OTP-11923: erts: Update preloaded erts_internal.beam erts: Add spec for erts_internal:map_to_tuple_keys/1 erts: Add testcase for erts_debug:size/1 Map terms kernel: Fix erts_debug:size/1 to handle Map sizes erts: Add erts_internal:map_to_tuple_keys/1
2014-05-10inet: fix typo in inet:getstat/2 docDanil Zagoskin
The word 'received' in 'send_dvi' option description seems to be copy-pasted and not removed
2014-05-09Merge branch 'siri/cuddle-with-tests' into maintSiri Hansen
* siri/cuddle-with-tests: Fix regexp in release_handler test so versions are correctly replaced Update kernel, stdlib and sasl appup tests Minor update to test_server for finding old releases
2014-05-05Merge branch 'lukas/kernel/fix_sendfile_no_async_tests/OTP-11903' into maintLukas Larsson
* lukas/kernel/fix_sendfile_no_async_tests/OTP-11903: kernel: Skip sendfile tests that force async threads
2014-04-30kernel: Fix erts_debug:size/1 to handle Map sizesBjörn-Egil Dahlberg
2014-04-23Update kernel, stdlib and sasl appup testsSiri Hansen
Add test of update instructions from current major to current minor. Earlier only previous major to current was tested.
2014-04-22Merge branch 'siri/ac-change_app_data/OTP-11864' into maintSiri Hansen
* siri/ac-change_app_data/OTP-11864: Store expanded config in application_controller:change_application_data
2014-04-11Store expanded config in application_controller:change_application_dataSiri Hansen
If the Config given to application_controller:change_application_data included other config files, it was only expanded for already existing (loaded) applications. If an upgrade added a new application which had config data in an included config file, the new application did not get correct config data. This is now changed so config data will be expanded for all applications.
2014-04-10Add hyperlinks to modules in reference manual for kernel applicationSiri Hansen
This makes the pointers to other reference manuals consistent throughout this page.
2014-04-10kernel: Skip sendfile tests that force async threadsLukas Larsson
The tests have to be skipped when the emulator running the tests does not have any async threads.
2014-04-07Update release notesErlang/OTP
2014-03-30Fix reference to start_type() i application(3)Hans Bolinder
2014-03-30Export type application:start_type()Loïc Hoguin
Also use this type in the start/2 callback spec.
2014-03-28kernel: tweak testsDan Gudmundsson
heart tests decrease atom table size so node crashes faster Fix timetrap and sync
2014-03-27Merge branch 'lukas/ose/master-17.0/OTP-11334'Lukas Larsson
* lukas/ose/master-17.0/OTP-11334: ose: Fix erts assert failed printouts ose: fix for packet_bytes in fd/spawn driver. ose: Prepare slave for running on OSE ose: Fix bug when hunting for signal proxy ose: Implement tcp inet driver for OSE ose: Add ifdefs for HAVE_UDP ose: Yielding has to be done differently for background processes. ose: Print faults in aio sys driver calls ose: Prinout errno when to_erl read fails ose: erlang display goes to ramlog printf ose: Initiate stdin/stdout/stderr ose: Break lmconf into one per load module ose: Reset busy port when pdq empty ose: Restore the owner of the signal
2014-03-26ose: Prepare slave for running on OSELukas Larsson
This change relies on the assumption that all arguments before the last -- to the parent beam should be left as they are.
2014-03-26ose: Implement tcp inet driver for OSELukas Larsson
The inet driver for OSE has to handle signals instead of selects and thus the wrappers for ready_input/output are a little bit different. However the majority of the inet code remains the same.
2014-03-24Merge branch 'sverk/win-long-filenames/OTP-11813'Sverker Eriksson
* sverk/win-long-filenames/OTP-11813: erts: Cleanup debug tracing in win_efile.c erts: Fix file:list_dir for windows paths 258 or 259 chars long erts: Increase MAXPATHLEN to 4096 for windows erts: Fix bug in efile_readlink for long win paths kernel: Fix failed tests in prim_file_SUITE for windows erts: Fix compiler warning in win_efile.c erts: Skip tests of paths longer than 255 characters as atoms erts: Skip tests of file:set_cwd for too long path on Windows erts: Make file:make_symlink/2 return {error,eperm} on Windows erts: Revert file:set_cwd impl for windows erts: Ignore reduntant slashes in windows paths fix file_SUITE:cur_dir_0 for long windows paths erts: Fix file_SUITE:make_del_dir for long paths erts: Fix long windows paths for compressed files erts: Use GetFullPathNameW to construct abs paths from relative ones erts: Fix file driver to handle long paths on windows Conflicts: erts/emulator/drivers/win32/win_efile.c
2014-03-24kernel: Fix failed tests in prim_file_SUITE for windowsSverker Eriksson
2014-03-24erts: Skip tests of paths longer than 255 characters as atomsSverker Eriksson
2014-03-24erts: Skip tests of file:set_cwd for too long path on WindowsSverker Eriksson
2014-03-24erts: Make file:make_symlink/2 return {error,eperm} on WindowsSverker Eriksson
if the user has not the privilege SE_CREATE_SYMBOLIC_LINK_NAME
2014-03-21Merge branch 'fogfish/embedded-arm-android'Henrik Nord
* fogfish/embedded-arm-android: Raspberry PI / Android a minimal cross-compile configuration OTP-11805
2014-03-21Merge branch 'yiannist/hipe-llvm-backend'Henrik Nord
* yiannist/hipe-llvm-backend: Support the LLVM backend in HiPE Implement the LLVM backend Extend RTL API to support the LLVM backend Add support for llvm unique symbols in hipe_gensym Add a BIF that only returns the atom ok Move some common code in hipe_pack_constants Add better specs in hipe_pack_constants and cleanup OTP-11801
2014-03-21Documentation fixRickard Green
2014-03-21Raspberry PI / Android a minimal cross-compile configurationDmitry Kolesnikov
Enable a cross compile Erlang/OTP platform to Android or Raspberry PI using Android NDK. Port emulator and core application to support target HW platform. Exclude any add-on services required for OTP platform deployment into target hardware due to device fragmentation and jail-break requirements. * fix erts/emulator/beam/sys.h Disable redefinition of __noreturn macro * port erts/emulator/sys/unix/erl_child_setup.c Use techniques proposed by https://code.google.com/p/erlang4android to access system properties * fix erts/emulator/sys/unix/erl_unix_sys_ddll.c The static linking of emulator cannot find dlerror(), dlopen() symbols * port erts/emulator/sys/unix/sys.c make path to shell configurable at build time * port erts/etc/common/Makefile.in disable librt for *-linux-androideabi * port erts/lib_src/pthread/ethread.c Use techniques proposed by https://code.google.com/p/erlang4android to disable emulator crash if kernel threads are on. Replace unreliable pthread_sigmask() by sigprocmask() * port lib/erl_interface/src/connect/ei_connect.c Disable call to undefined gethostid() * port lib/erl_interface/src/connect/ei_resolve.c Use gethostbyname_r() on Android platform
2014-03-20Verify runtime_dependencies when running 'otp_build patch_app'Rickard Green
2014-03-20Introduce runtime_dependencies in .app filesRickard Green
Most dependencies introduced are exactly the dependencies to other applications found by xref. That is, there might be real dependencies missing. There might also be pure debug dependencies listed that probably should be removed. Each application has to be manually inspected in order to ensure that all real dependencies are listed. All dependencies introduced are to application versions used in OTP 17.0. This since the previously used version scheme wasn't designed for this, and in order to minimize the work of introducing the dependencies.
2014-03-20Fix some Dialyzer warningsHans Bolinder
Dialyzer recognizes a certain pattern that makes it possible to get rid of 'The created fun has no local return' warnings.
2014-03-20Merge branch 'bjorn/cuddle-with-tests'Björn Gustavsson
* bjorn/cuddle-with-tests: cover_SUITE:reconnect/1: Let the other side initiate the disconnect Attempt to provide more information if a test case fails prim_file_SUITE: Remove the short 5 seconds timetrap timeout shell_SUITE: Give bs_match_bin_SUITE/1 more time
2014-03-19Merge branch 'josevalim/set_cwd-typespec'Henrik Nord
* josevalim/set_cwd-typespec: Correct file:set_cwd/1 typespec OTP-11787
2014-03-14erts: Add distribution capability flag for maps DFLAG_MAP_TAGSverker Eriksson
This is just a preparation to allow detection of older nodes that do not understand maps (R16 and older).
2014-03-13fix file_SUITE:cur_dir_0 for long windows pathsSverker Eriksson
2014-03-13erts: Fix file_SUITE:make_del_dir for long pathsSverker Eriksson
Windows do not accept long UNC paths for current working directory.
2014-03-10Correct file:set_cwd/1 typespecJosé Valim
file:set_cwd/1 accepts binaries as arguments, however the binaries must be properly encoded as per file:native_name_encoding/0. Also update the note under no_translation error to refer that passing a ISO-latin-1 encoded binary under any unicode file name encoding.
2014-03-07Support the LLVM backend in HiPEYiannis Tsiouris
Add flags to enable and use the LLVM backend: * to_llvm: use the LLVM pipeline for compilation (default optimization level is O3), * llvm_save_temps: save the intermediate files in current directory in order to be able to debug or optimize the LLVM assembly, * {to_llvm, O}: set the optimization level of LLVM opt and llc tools. Add some debug support to the loader; no semantic change intented.
2014-02-28prim_file_SUITE: Remove the short 5 seconds timetrap timeoutBjörn Gustavsson
Several tests cases would typically fail because of a timetrap timeout on our older test machines running with a Linux kernel with a lower version than 2.6.30 and the ext3 file system. In http://lwn.net/Articles/328363/, the author desribes peformance issues with ext3 that were fixed in 2.6.30. Since common_test nowadays has a default timetrap timeout, there is no need to explicitly set a timeout in each test case (except for prolonging the default timeout).