Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
* maint:
Fix encoding of filenames in stacktraces
|
|
* rickard/file-encoding-stacktraces/OTP-14847/ERL-544:
Fix encoding of filenames in stacktraces
|
|
|
|
* maint:
Do not add -lz to LIBS; keep it in Z_LIB
|
|
* rickard/libs-libz/ERL-529/OTP-14840:
Do not add -lz to LIBS; keep it in Z_LIB
|
|
|
|
The call "erlang:get_stacktrace()" is not handled explicitly. If there
are issues, they can probably be ignored since erlang:get_stacktrace/1
will be deprecated and removed.
|
|
|
|
The reduction cost of sending messages is now constant and will no
longer scale according to the length of the receiving process'
message queue.
|
|
|
|
|
|
into utility functions.
|
|
|
|
Fix GC bug for HiPE primop bs_put_utf8
|
|
in order to detect incompatible changes in primop interface
(which we just did for bs_put_utf8) and refuse hipe loading.
|
|
by preventing it from doing GC, which generated code relies on.
|
|
This is *ONLY* relevant for drivers/NIFs, so it's probably counter-
productive to document it elsewhere.
|
|
Previously we accepted trailing NULs, which was backwards compatible
as such usage never resulted in misbehavior in the first place. The
downside is that it prevented erts_native_filename_need from
returning an accurate number of *actual characters*, needlessly
complicating encoding-agnostic code like erts_osenv.
|
|
The standard search order does not include the directory that the
loaded DLL resides in, requiring dirty $PATH hacks to get things
working, which is not an option now that os:putenv/2 is divorced
from the OS environment.
|
|
putenv(3) and friends aren't thread-safe regardless of how you slice
it; a global lock around all environment operations (like before)
keeps things safe as far as our own operations go, but we have
absolutely no control over what libc or a library dragged in by a
driver/NIF does -- they're free to call getenv(3) or putenv(3)
without honoring our lock.
This commit solves this by setting up an "emulated" environment which
can't be touched without going through our interfaces. Third-party
libraries can still shoot themselves in the foot but benign uses of
os:putenv/2 will no longer risk crashing the emulator.
|
|
|
|
|
|
|
|
* dgud/kernel/refc_sched_wall_time/OTP-11694:
test: spawn scheduler_wall_time flag holder
Turn on scheduler_wall_time in an alive process
Redirect system_flag(scheduler_wall_time,_) to kernel_refc
kernel: add a resource reference counter
|
|
|
|
|
|
Add -MMD option to erlc
OTP-14830
|
|
|
|
|
|
Symptom: "Closing pipe in state Waiting. Event lost?"
Snake oil:
Do erlang:yield() instead of busy spinning in "Waiting" state.
|
|
|
|
|
|
|
|
Add syntax in try/catch to retrieve the stacktrace directly
|
|
|
|
When a dirty NIF is executed a "schedule in" trace event is
generated, which may in turn result in a generic system task being
created, causing the process to be scheduled out as it can't run
dirty with pending tasks.
This is usually fine since said system task is seldom created, but
ERTS_FORCE_ENIF_SEND_DELAY was de-facto always on for debug builds,
causing the process to bounce between dirty and normal schedulers
forever.
This commit is not a complete fix and it can go off the rails even
on normal builds; if there's a lot of dirty jobs lined up and the
receiver's msgq lock happens to be busy at the wrong time, the
additional trace messages generated through this will hammer the
lock and keep everything bouncing.
|
|
Most functions return this if they're given an invalid path, eg. if
they contain "<" or ">". ENOENT may seem like a strange translation,
but that's what open(2) returns when fed garbage, so we'll roll with
that.
|
|
The compile option makedep_side_effect, erlc -MMD, instructs
the compiler to emit dependencies and continue to compile
as normal.
|
|
|
|
erlexec adds $ROOT/erts-<vsn>/bin and $ROOT/bin first in $PATH on
startup, but didn't do so if they were in the $PATH already, which
meant that the bindir didn't point to the current release after a
downgrade.
|
|
|
|
|
|
|
|
* maint:
fix output formatting in several HiPE debug BIFs
|
|
fix output formatting in several HiPE debug BIFs
OTP-14804
|
|
* bjorn/compiler/clean-up-codegen:
bs_match_SUITE: Cover more clauses in v3_codegen:bs_rename_ctx/4
Clean up and comment code generation for basic blocks
Stop trying to maximize the use of x(0)
Clean up collection of basic blocks
|
|
|