summaryrefslogtreecommitdiff
path: root/erts/emulator/sys
Commit message (Collapse)AuthorAgeFilesLines
* Fix function "defined but not used" warningRickard Green2014-12-031-0/+4
|
* erts: Fix finite warning for clangLukas Larsson2014-12-021-1/+1
| | | | | clang aka llvm claims to be __GNUC__ and thus we have to explicitly check that it is not used.
* erts: Use finite instead of isfinite with gccLukas Larsson2014-11-241-0/+11
| | | | | | | Turns out that isfinite emits a function call and not an instruction in gcc, this makes estone float arith about 50-75% slower. finite emits the instruction so we use that instead.
* Merge branch 'sv/isfinite/OTP-12268' into maintLukas Larsson2014-10-281-4/+9
|\ | | | | | | | | * sv/isfinite/OTP-12268: Use isfinite() instead of finite() when available
| * Use isfinite() instead of finite() when availableAnthony Ramine2014-10-281-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OS X Mavericks builds result in a number of warnings about finite() being deprecated, like these: beam/erl_arith.c:451:7: warning: 'finite' is deprecated: first deprecated in OS X 10.9 [-Wdeprecated-declarations] ERTS_FP_ERROR(p, f1.fd, goto badarith); ^ sys/unix/erl_unix_sys.h:319:33: note: expanded from macro 'ERTS_FP_ERROR' ^ sys/unix/erl_unix_sys.h:244:51: note: expanded from macro '__ERTS_FP_ERROR' ^ /usr/include/math.h:718:12: note: 'finite' has been explicitly marked deprecated here extern int finite(double) __OSX_AVAILABLE_BUT_DEPRECATED(__MAC_10_0, __MAC_10_9, __IPHONE_NA, __IPHONE_NA); Add checks to use isfinite() instead of finite() where available. Verified on OS X Mavericks 10.9.5 and Ubuntu 12.04.
* | Merge branch 'rickard/eager-check-io/OTP-12117' into ↵Rickard Green2014-09-257-106/+656
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | rickard/maint-17/eager-check-io/OTP-12117 * rickard/eager-check-io/OTP-12117: Introduce support for eager check I/O scheduling Conflicts: erts/emulator/beam/erl_bif_info.c erts/emulator/beam/erl_init.c erts/emulator/beam/erl_process.c erts/preloaded/ebin/erlang.beam
| * Introduce support for eager check I/O schedulingRickard Green2014-09-257-106/+656
| |
* | Fix ERTS_POLL_DEBUG_PRINT usageMichael Truog2014-08-221-1/+1
| |
* | Fix permissions of some files in the repositoryAnthony Ramine2014-05-251-0/+0
| | | | | | | | | | | | | | These files aren't supposed to be executable. For reference, the command used to find them was: git ls-files -z | xargs -0 -J % find % -type f -perm ++x
* | Merge branch 'lukas/ose/master-17.0/OTP-11334'Lukas Larsson2014-03-274-133/+233
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * | ose: Fix erts assert failed printoutsLukas Larsson2014-03-261-2/+2
| | |
| * | ose: fix for packet_bytes in fd/spawn driver.Jonas Karlsson2014-03-261-134/+155
| | |
| * | ose: Fix bug when hunting for signal proxyLukas Larsson2014-03-261-1/+1
| | | | | | | | | | | | | | | Sometimes the wrong signal, i.e. a read reply, would be received from this non-selective receive.
| * | ose: Implement tcp inet driver for OSELukas Larsson2014-03-262-2/+7
| | | | | | | | | | | | | | | | | | 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.
| * | ose: Print faults in aio sys driver callsLukas Larsson2014-03-261-5/+17
| | |
| * | ose: erlang display goes to ramlog printfLukas Larsson2014-03-261-0/+60
| | |
| * | ose: Initiate stdin/stdout/stderrLukas Larsson2014-03-261-0/+2
| | | | | | | | | | | | | | | Needed to get std io to work in some OSE systems where stdio is not opened when the program starts.
| * | ose: Break lmconf into one per load moduleLukas Larsson2014-03-261-0/+1
| | |
| * | ose: Reset busy port when pdq emptyLukas Larsson2014-03-231-10/+9
| | |
| * | ose: Restore the owner of the signalAdrian Mangeac2014-03-232-1/+1
| | | | | | | | | | | | | | | | | | As any scheduler process can consume any message we have to make sure that the message is owned by the scheduler before returning it in erl_drv_ose_get_signal.
* | | Merge branch 'paulgray/dtrace_snprintf_fix/OTP-11816'Lukas Larsson2014-03-251-1/+2
|\ \ \ | | | | | | | | | | | | | | | | * paulgray/dtrace_snprintf_fix/OTP-11816: Fix DTrace/SystemTap-related formatting
| * | | Fix DTrace/SystemTap-related formattingScott Lystig Fritchie2014-03-251-1/+2
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks to Michał Ptaszek for bringing this embarrassing formatting error to my attention. Many DTrace/SystemTap trace strings are incorrectly truncated at 4/8 bytes, depending on the CPU word size. This patch expands the work from commit d032e097 by zheng siyao. Michał's report to the erlang-bugs list can be found at: http://erlang.org/pipermail/erlang-bugs/2014-March/004250.html Conflicts: erts/emulator/beam/beam_emu.c erts/emulator/beam/copy.c erts/emulator/beam/dist.c erts/emulator/beam/erl_async.c erts/emulator/beam/erl_bif_port.c erts/emulator/beam/erl_port_task.c erts/emulator/beam/erl_process.c erts/emulator/beam/io.c
* | | Merge branch 'sverk/win-long-filenames/OTP-11813'Sverker Eriksson2014-03-241-9/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * | | erts: Increase MAXPATHLEN to 4096 for windowsSverker Eriksson2014-03-241-9/+11
| | | |
* | | | Merge branch 'nox/reedr-closefrom'Henrik Nord2014-03-211-0/+7
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * nox/reedr-closefrom: Use closefrom(2) when available in child_setup Conflicts: erts/emulator/sys/unix/erl_child_setup.c OTP-11809
| * | | | Use closefrom(2) when available in child_setupRick Reed2014-03-091-0/+4
| | |_|/ | |/| |
* | | | Raspberry PI / Android a minimal cross-compile configurationDmitry Kolesnikov2014-03-213-3/+51
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Merge branch 'lukas/ose/master/OTP-11334'Lukas Larsson2014-02-2418-10/+4534
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * lukas/ose/master/OTP-11334: (71 commits) erts: Fix unix efile assert ose: Use -O2 when building ose: Expand OSE docs ose: Add dummy ttsl driver ose: Cleanup cleanup of mutex selection defines ose: Polish mmap configure checks ose: Add ose specific x-compile flags ose: Updating fd_driver and spawn_driver for OSE ose: Updating event and signal API for OSE ose: Cleanup of mutex selection defines win32: Compile erl_log.exe ose: Remove uneccesary define ose: Fix ssl configure test for osx erts: Fix sys_msg_dispatcher assert ose: Fix broken doc links ose: Thread priorities configurable from lmconf ose: Yielding the cpu is done "the OSE" way ose: Start using ppdata for tse key ose: Do not use spinlocks on OSE ose: Fix support for crypto ... Conflicts: lib/crypto/c_src/crypto.c
| * | | ose: Updating fd_driver and spawn_driver for OSEJonas Karlsson2014-02-241-689/+650
| | | |
| * | | ose: Updating event and signal API for OSEJonas Karlsson2014-02-242-5/+8
| | | |
| * | | ose: Thread priorities configurable from lmconfLukas Larsson2014-02-242-1/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The pattern used for getting the priority from the lmconf is based on the name of the process created. The pattern is: ERTS_%%PROCESS_NAME%%_PRIO with the %%PROCESS_NAME%% replaced by the prefix of the process the priority applies to. eg: ERTS_SCHEDULER_PRIO=24 applies to processes with name SCHEDULER_1, SCHEDULER_2 etc.
| * | | ose: Cleanup POLL_SCHED_1 codeLukas Larsson2014-02-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Now schedulers 2..N make sure to wake sched 1 if they find that all io has been consumed and sched 1 is sleeping. Before sched 1 was spinning in sys_schedule waiting for sched 2..N to finish consuming io jobs
| * | | ose: Added Enea copyright header to lcf files.Robert Paal2014-02-245-680/+59
| | | | | | | | | | | | | | | | Also removed softkernel lcf files.
| * | | ose: Eliminating delays when trying to open filesRobert Paal2014-02-241-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When opening filers on not mounted volumes the default timeout on OSE is quite big and since at startup we load something like 20 beam files this slows down startup by as much as 50 seconds.
| * | | ose: Update ddll interface after rebase to 17.0-rc1Lukas Larsson2014-02-241-74/+3
| | | | | | | | | | | | | | | | Also deleted all the copy-paste stuff
| * | | ose: Add fair scheduling yieldsLukas Larsson2014-02-241-2/+3
| | | | | | | | | | | | | | | | | | | | This is needed on OSs that do not do round robin scheduling of threads.
| * | | ose: Port run_erl and to_erlLukas Larsson2014-02-241-0/+3
| | | |
| * | | ose: Rewrite resolve_signal API for ose driversLukas Larsson2014-02-245-169/+129
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This new API has less impact on the check_io code and also removes the callback from ErlDrvEntry. The downside is that you have to give the resolve function when creating each event. Also the mode if the resolve was removed as this mimics the win32 code and decreases complexity.
| * | | ose: Fix starting with pm_createLukas Larsson2014-02-241-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | For some reason starting with pm_create offsets the input argument list by one, so we have to adjust them before calling erl_start.
| * | | ose: Update erl_assert_error after R16B03 api changeLukas Larsson2014-02-241-5/+7
| | | |
| * | | ose: OSE port related cleanup and fixesJonas Karlsson2014-02-241-19/+9
| | | | | | | | | | | | | | | | | | | | | | | | Some OSE cross-chains have problems with system includes being used, so for atleast OSE specific parts we use "" instead of <>.
| * | | ose: Fix printout to stdout to not duplicate long buffersLukas Larsson2014-02-241-5/+15
| | | |
| * | | ose: Use spinlock as default heap lock mechanismJonas Karlsson2014-02-241-1/+2
| | | |
| * | | ose,erts: Specify name for tsd keysLukas Larsson2014-02-242-2/+2
| | | | | | | | | | | | | | | | | | | | This simplified debugging on OSE and also limits the number of ppdata keys that are created when beam is restarted.
| * | | ose: Style updates onlyLukas Larsson2014-02-241-95/+50
| | | |
| * | | ose: Fix various build environment issuesLukas Larsson2014-02-242-0/+22
| | | |
| * | | ose: Change signal base to registered rangeLukas Larsson2014-02-241-1/+1
| | | |
| * | | ose: Add eh_frame_hdr section to linker fileLukas Larsson2014-02-241-0/+4
| | | |
| * | | ose: Add link conf for gcc 4.4.3Lukas Larsson2014-02-242-0/+147
| | | |
| * | | ose: Copied driver_int.h from unixLukas Larsson2014-02-241-0/+41
| | | |