Age | Commit message (Collapse) | Author |
|
|
|
Also fix and document the broken +We option.
|
|
* bk/configure-arch-ppc64le/OTP-12761:
Add architecture ppc64le architecture as a ppc64
|
|
ppc64le is a new arch/ABI that runs on IBM POWER processor starting at POWER8
processor, and it should be listed as a ppc64, mainly for hipe enablement.
For more information about this new arch/ABI, please check the documents at:
https://www-03.ibm.com/technologyconnect/tgcm/TGCMServlet.wss?alias=OpenPOWER
|
|
|
|
|
|
This reverts commit 4c4d7fa40e5fb59854724ce74b8aa3546525cb90.
This pr is causing some test failures that were missed at first.
|
|
* richcarl/warnings-by-default:
Map error logger warnings to warning messages by default
OTP-12755
|
|
* mikpe/erl_child_setup-android-breakage:
erl_child_setup.c: fix Android breakage
OTP-12751
|
|
The old code did not take take the old-heap into acount.
|
|
|
|
Dirty schedulers are limited in the type of work they can
perform. Make sure they do not participate in any work or make any
function calls related to timer wheels.
|
|
|
|
Also fix and document the broken +We option.
|
|
This reverts commit e09dd66dc4d89c62ddfd8c19791f9678d5d787c6.
|
|
Given some pointer *x, calling sizeof(x) will give us
the size of the pointer (4/8 bytes) not the size fo the
underlying dereferenced structure. Use coccinelle to
search for these occurrences in the source code, and
correct them one by one. In the case of
erl_node_tables.c, the erts_snprintf() calls used a
much too small buffer.
- run_erl.c: Use the size of the signal type, not
its pointer.
- erl_node_tables.c: Use the size of the _BUFFER in
erts_snprintf() to make sure we can use the full space.
|
|
If the driver queue is empty, or the user is requesting a 'read'
shutdown, then the shutdown() syscall is performed synchronously, as
per the old version of shutdown/2.
However, if the user is requesting a 'write' or 'read_write' shutdown,
and there is data in the driver queue for the socket, then the
shutdown() syscall is delayed and handled asynchronously when the
driver queue is written out.
This version of shutdown solves a number of issues with the old
version. The two main solutions it offers are:
* It doesn't block when the TCP peer is idle or slow. This is the
expected behaviour when shutdown() is called: the caller needs
to be able to continue reading from the socket, not be prevented
from doing so.
* It doesn't truncate the output. The current version of
gen_tcp:shutdown/2 will truncate any outbound data in the driver
queue after about 10 seconds if the TCP peer is idle of slow. Worse
yet, it doesn't even inform anyone that the data has been
truncated: 'ok' is returned to the caller; and a FIN rather than
an RST is sent to the TCP peer.
For a detailed description of all the problems with the old version
of shutdown, please see the EEP Light that was written to justify
this patch.
|
|
|
|
|
|
* rickard/timer-optimization/OTP-12650:
Timer fixes, documentation, and test cases
Conflicts:
erts/emulator/beam/erl_hl_timer.c
|
|
|
|
* jv/18/emulator-send-to-error_logger/OTP-12735:
erts: Fix erts_send_error_term_to_logger memory leak
Send format and args on process exit to error_logger
Add erts_send_error_term_to_logger
|
|
|
|
* egil/erts/high_accuracy_sleep/OTP-12236:
erts: Add high accuracy poll timeouts
|
|
Previously, the emulator would generate a whole string
with values and call the error_logger passing "~s~n".
This commit changes it to a format string containing ~p
with the respective values as arguments.
|
|
This function allows us to send format and args to the
logger which can then be formatted and customized from
Erlang land.
|
|
* egil/fix-maps-copy-shallow:
erts: Make hashmap_get halfword safe
erts: Fix ETS db_has_variable check for large Maps
stdlib: Strengthen ETS Maps tests
erts: Fix copy shallow for large Maps
stdlib: Strengthen ETS Maps tests
erts: ETS ordered_set cannot use it's optimization with Maps
stdlib: Strengthen ETS Maps tests
stdlib: Refactor away ?line macro
|
|
* aw/native-cpu_sup/OTP-12730:
erts: Fix configure.in
os_mon: rename send() to sendi() in cpu_sup.c
os_mon: cpu_sup should use native sysctl/libkvm calls on BSD
|
|
* egil/fix-maps-erts_debug-size:
erts: Fix erts_debug:size/1 for large Maps
erts: Simple test of erts_debug:size/1 of Maps
|
|
* sg2342/fix_freebsd_sendfile/OTP-12720:
Fix FreeBSD sendfile
|
|
* sverk/erts-fp-exception-fixes/OTP-12717:
erts: Disable float exceptions for clang/llvm
erts: Increase buffer in erts_fp_check_init_error
|
|
|
|
|
|
* rickard/timer-optimization/OTP-12650:
Optimized timer implementation
Reusable red-black tree implementation
Conflicts:
erts/emulator/beam/erl_bif_timer.c
|
|
* rickard/time-improvement/OTP-11997:
Allow execution of estone suite on pre OTP-18 systems
Add parallel time monotonicity test-case
Replace usage of erlang:now() in line-tracing
Replace erlang:now() usage in emulator suite
Replace erlang:now() usage in system suite
Misc time improvements
|
|
|
|
|
|
* richcarl/md5-fixes:
Set module_info md5 for native modules properly
Add module_info entry for native code
Gracefully handle empty md5 field in module_info
Remove 'imports' key from spec of get_module_info()
|
|
|
|
* egil/fix-pos-zero-opt:
erts: Don't let the compiler optimize pos. zero fix
|
|
Use the md5 of the native code chunk instead of the Beam code md5.
|
|
|
|
|
|
|
|
* henrik/update-javaversion:
update java version
OTP-12715
|
|
|
|
There is no need to take special care of Maps at all since header_arity(hdr)
will take care of the normal case via its Map handling.
|
|
The optimization cannot be used due to that the pattern cannot be ordered.
|
|
|
|
|