Age | Commit message (Collapse) | Author |
|
There is a system limit on the number of ppdata that is available
but that should not be reached, and ppdata is faster than using
get_envp.
|
|
|
|
The interface of this module is made to be as generic as possible
in order for other IPC mechanisms to mimic it and allow porting of
code between different os:es.
|
|
The old way registered a shell command that needed to be executed. This
way is more flexible as you can also use the lmconf file to set arguments
there.
|
|
This is needed because OSE does not use 1 for SEEK_CUR
|
|
|
|
This is done in order to catch rogue signals
|
|
This is needed because OSE does not have the same integers
as unix/win32 for SEEK_ST and friends.
|
|
This is needed because a file has to be opened and operated on
in the same process at all times. Using async threads guarantee this.
|
|
|
|
To enable just uncomment and all signals going in or out will be
printed to stdout.
|
|
Before get_envp was used and this caused the environment
variables to not be accessible in the correct way by
use debug tools.
|
|
This port has support for both non-smp and smp.
It contains a new way to do io checking in which erts_poll_wait
receives the payload of the polled entity. This has implications
for all linked-in drivers.
|
|
* rickard/configure-defaults/OTP-11723:
Always default to disabled floating point exceptions on Linux
|
|
This since there exist unresolved stability issues in the implementation
for Linux.
|
|
* egil/maps/fix-cerl-inlining:
compiler: Update map_SUITE to handle inlining
erts: Maps src instructions can't be literals
compiler: Fix map inlining
compiler: Add variable coverage of map in cerl
|
|
* rickard/assumed-cacheline-size/OTP-11742:
Introduce configure option --with-assumed-cache-line-size=SIZE
|
|
* vinoski/ds2:
further enhancements for dirty schedulers
allow optional whitespace in dirty scheduler erl options
|
|
Add support for setting the number of dirty CPU schedulers online via
erlang:system_flag/2. Assuming the emulator is built with dirty schedulers
enabled, the number of dirty CPU schedulers online may not be less than 1,
nor greater than the number of dirty CPU schedulers available, nor greater
than the number of normal schedulers online. Dirty CPU scheduler threads
that are taken offline via system_flag/2 are suspended. The number of dirty
CPU schedulers online may be adjusted independently of the number of normal
schedulers online, but if system_flag/2 is used to set the number of normal
schedulers online to a value less than the current number of normal
schedulers online, the number of dirty CPU schedulers online is decreased
proportionally. Likewise, if the number of normal schedulers online is
increased, the number of dirty CPU schedulers online is increased
proportionally. For example, if 8 normal schedulers and 4 dirty CPU
schedulers are online, and system_flag/2 is called to set the number of
normal schedulers online to 4, the number of dirty CPU schedulers online is
also decreased by half, to 2. Subsequently setting the number of normal
schedulers online back to 8 also sets the number of dirty CPU schedulers
online back to 4. Augment the system_flag/2 documentation in the erlang man
page to explain this relationship between schedulers_online and
dirty_cpu_schedulers_online.
Also ensure that all dirty CPU and I/O schedulers are suspended when
multi-scheduling is blocked via system_flag/2, and brought back online when
multi-scheduling is unblocked.
Add Rickard Green's rewritten check_enqueue_in_prio_queue() function that
inspects process state more thoroughly to determine if to enqueue it and if
so on what queue, including dirty queues when appropriate.
Make sure dirty NIF jobs do not trigger erlang:system_monitor long_schedule
messages.
Add more dirty scheduler testing to the scheduler test suite.
Remove the erts_no_dirty_cpu_schedulers_online global variable, since it's
no longer needed.
Execute dirty NIFs on a normal scheduler thread while multi-scheduling
blocking is in effect. Evacuate any dirty jobs residing in the dirty run
queues over to a normal run queue when multi-scheduling is blocked.
Allow dirty schedulers to execute aux work.
Set the dirty run queues halt_in_progress flag when halting the normal
schedulers.
Change dirty scheduler numbers to a structure including both scheduler
number and type, either dirty CPU or dirty I/O. Add some assertions to
ensure that dirty CPU schedulers operate only on dirty CPU scheduler
process flags, and the same for dirty I/O schedulers.
|
|
Many appup files are now corrected and the applications can be
included in the upgrade suite.
|
|
|
|
This suite was earlier only possible to run on linux hosts in the OTP
test lab. Now a ct config file can be used to point out the two last
major releases, e.g. like this:
{otp_releases,[{r16,"/path/to/r16/bin/erl"},
{'17',"/path/to/17/bin/erl"}]}.
Until OTP 17.0 is really released, the entry named '17' may well be
left out, causing the test case upgrade_SUITE:minor to be skipped.
|
|
This is only for nodes not started with test_server:start_node.
|
|
|
|
To make the result executable as is the case for erl.src.
|
|
This test creates an OTP package of the previous major release and
performs an upgrade to the current release.
|
|
This change was triggered by the OSE float printing function
not working exactly the same way as linux/win32. But it is
also a good one in general as it cuts size in more than half
for floats.
|
|
|
|
Move src to a register if it is a literal.
|
|
* bjorn/erts/restore-cmp-arguments:
beam/utils.c: Change back cmp() to only take two arguments
|
|
* egil/compiler/maps-get_map_elements:
compiler: Strengthen Maps compile tests
compiler: Remove dead warning
erts: Fix erts_debug:disassemble/1
compiler: Transform list of Args to exact literal type
compiler: Test Maps aliasing
compiler: Use aliasing in map pair patterns
compiler: Check literal order in beam_validator
erts: Introduce new instructions for combined key fetches
compiler: Change map instructions for fetching values
|
|
* rickard/otp_version/OTP-11615:
Misc adjustments of OTP version
|
|
* sverk/nif_SUITE-memleak:
erts: Fix memory leak in nif_SUITE:resource_takeover
|
|
|
|
* lukas/erts/dtrace-config-logging/OTP-11622:
dtrace: Update dtrace docs with latest tested platforms
erts: Fix dtrace generation on FreeBSD
erts: Rewrite dtrace configure test
|
|
Now handles map instructions correctly.
|
|
OTP-11726
* sverk/ets-all-race:
erts: Fix faulty asserts in erts_sys_aligned_alloc/free
erts: Fix harmless (?) typo in beam_load.c
erts: Fix race bug in ets:all/0
|
|
|
|
|
|
causing recently created/deleted tables to not be included/excluded.
|
|
* sverk/test_server/openbsd-dynlink:
erts: Skip driver_SUITE:thr_free_drv for VM without threads
erts: Fix driver_SUITE:otp_9302 for VM without threads
test_server: Fix dynlib link command for openbsd
|
|
OTP-11722
OTP-11724
* sverk/crypto/hmac-context-reuse-bug:
crypto: Fix bug when using old hmac context
erts: Fix NIF bug when load/upgrade fails after enif_open_resource_type
Conflicts:
erts/emulator/test/nif_SUITE.erl
|
|
|
|
|
|
Commit d5c238473b9cec819d93faaef4ccc00ddb60465f added a third
argument to the cmp() function, but did not change the code generation
of native code that called cmp().
Name the new functions with an "erts_" prefix, and reinstate the
old cmp() function with two arguments.
We don't have to keep a cmp() function in the halfword emulator,
since HiPE does not support the halfword emulator.
|
|
The +SDcpu, +SDPcpu, and +SDio options did not properly handle having their
arguments immediately following them without intervening whitespace,
e.g. +SDio20 was treated as an error. Fix all the dirty scheduler command
line options so they handle optional whitespace between them and their
associated arguments.
|
|
* rickard/default_acul_mod/OTP-11604:
Fix +Mea config
|
|
* egil/compiler/maps-fix-codegen:
compiler: Fix codegen multiple updates for Maps
erts,compiler: Correct and amend tests for Maps
|
|
Faulty test for maps update
|
|
* egil/erts/fix-maps-beam_load:
compiler: Update map_SUITE with error case test
erts: Maps must fail on exact updates of empty Maps
erts: Fix Maps for beam_load
|