Age | Commit message (Collapse) | Author |
|
The actual port id is used to create a key from the
pointer value which is the ErlDrvPort. To do this
a new driver api function driver_async_port_key is
added and the driver API minor version is updated.
The documentation is updated and the faulty description of
how to spread ports over async threads is updated to
use the new API.
Testcase also added.
|
|
|
|
* sverk/darwin-unlimited-select:
erts: Fix dynamic select for darwin
erts: Refactor unlimited select patch
erts: Fix bug in unlimited fd_set patch
Use _DARWIN_UNLIMITED_SELECT in erl_poll
|
|
* pan/win_now_jumps:
Enable use of GetTickCoun64 when available
Intermediate code with lock on gettickcount()
Tmp
OTP-11146
|
|
* rickard/stale-driver-select/OTP-11084:
Fix crash when reporting stale driver select
|
|
Make sure the fd-sets (read and write) are of equal size.
|
|
An attempt to beautify the code by reducing the amount of #ifdef's
in the hot code path.
|
|
|
|
* sverk/win64-fixes:
erts: Change some more 'long' to pointer sized int (ErlDrvUInt)
erts: Fix crash in nif_SUITE for win64
erts: Fix assert in isdigit for negative characters
|
|
* lukas/erts/win32_io_flush_hangs/OTP-11096:
Repeat flush loop at timeout intervals
|
|
This allows erl_poll to select() on file descriptors greater than
FD_SETSIZE (1024) on Darwin. The fd sets are manually (re)allocated and
freed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
spells __NetBSD__ correctly.
|
|
* egil/fix-mseg_dealloc-arguments/OTP-10912:
erts: Fix refactor error in mseg
|
|
Faulty number of arguments to mseg_dealloc.
Problem arises if we try to compile halfword on operating system
which do not have mremap. Not a supported case.
|
|
|
|
|
|
|
|
* rickard/win-drv-bugfix/OTP-10803:
Fix close_active_handle() properly
|
|
|
|
|
|
This is the base for implementing configurable
~tp printouts, so that the user can define which
characters to view as actually printable in the shell and
by io_lib:format.
The functionality is neither documented nor used in this commit
|
|
* rickard/erl_drv_consume_timeslice/OTP-10810:
Implement erl_drv_consume_timeslice()
|
|
* rickard/win-drv-bugfix/OTP-10807:
Fix flush of fd-driver on Windows
|
|
* rickard/win-drv-bugfix/OTP-10803:
Fix unsafe accesses to driver data from win32 fd/vanilla/spawn drivers
|
|
* rickard/win-drv-bugfix/OTP-10802:
Fix unsafe driver_select() from win32 vanilla/spawn drivers
|
|
* rickard/r16b/port-optimizations-fixes/OTP-10809:
Add erl_drv_busy_msgq_limits() to driver API on Windows
Fix driver port accesses
Fix port exit
|
|
* egil/enhance-mseg-cache/OTP-10840:
erts: Utilize even more cached sbc segments
erts: Prefer sbc segment caching over mbc segments
erts: Segment allocator CircleQ API
erts: Increase default #cached segments to 10
erts: Evict old cached segments for newer ones
erts: Refactor mseg cache
|
|
|
|
* saleyn/float_to_list_2/OTP-10837:
Fix memory leak in error case
Use macros instead of constants
float_to_list/2 changed rounding and cosmetic cleanup
|
|
This is needed as C90 (and therefore the win32 compiler) does
not allow constants to be calculations based on other constants.
|
|
|
|
|
|
|
|
|
|
|
|
Previous default was 5.
|
|
|
|
The fix affects list_dir and read_link. Raw filenames are now
never produced, just consumed even if +fnu or +fna is used on
Linux etc.
This also adds the options to get error return or error handler
warning messages with +fn{u|a}{i|w|e} as an option to erl.
This is still not documented and there needs to be other versions
of read_dir and read_link to facilitate reading of all types
of filenames and links.
A check that we will not change to an invalid directory is also needed.
|
|
Use double ended cache queues to evict oldest cache first
|
|
Changed rouding to round half-way up instead of down.
Cosmetic cleanup and error handling of additional edge cases.
|
|
|
|
|
|
|