Age | Commit message (Collapse) | Author |
|
User tags in a dynamic trace enabled VM are spread throughout the system
in the same way as seq_trace tokens. This is used by the file module
and various other modules to get hold of the tag from the user process
without changing the protocol.
|
|
|
|
Add probes to (mostly) the efile_drv.c driver and other
file I/O-related source files.
|
|
|
|
The default value for the 'mod' parameter in .app files was
incorrectly documented to be 'undefined'. It is now corrected to [].
|
|
While disk_log eagerly collects logged data for better performance,
collecting too much data may choke the system and cause huge binaries
to be written.
The problem was addressed in OTP-9764, but the situation was not
improved in all cases.
Thanks to Richard Carlsson.
|
|
* sverk/zlib_port_leak:
Fix port leaks in zlib
OTP-9981
|
|
* lukas/kernel/sendfile_fixes:
Fix reselecting bug on OS X
Fix bug when sending long files using select
Fix ifdef to check if we are on OS X
Add test case for sending multiple small files on same connection
Fix memory leak when sendfile process crashes
Extend timeout for windows
Skip sendfile suite if solaris 8
|
|
Since stop_select is called at an arbitrary point in the future
it would sometime not be alled before the tcp driver started
selecting on the fd. So now ERL_DRV_USE_NO_CALLBACK is used
so that the stop_select call is never made.
This seems to only have happened OS X.
|
|
The return value from efile_sendfile was not consistent
inbetween platforms. The API should now be working as it
was intended.
OTP-9994
|
|
|
|
|
|
* bjorn/kernel/erts_debug_size-fix/OTP-9991:
Improve erts_debug_SUITE
Fix calculation of fun size in erts_debug:size/1
|
|
* ph/fix-enfile/OTP-9990:
Update preloaded prim_inet.beam
gen_tcp: Use correct specs for accept and listen
prim_inet: Catch system_limit in open_port
Fix returned error from gen_tcp:accept/1,2 when running out of ports
|
|
Funs would be calculated using erts_debug:flat_size/1.
|
|
|
|
* rj/fix-supervisor-shutdown-doc:
Fix small typo in kernel app doc
Cosmetic: split very long lines from supervisor doc
Fix supervisor doc: Shutdown, MaxR and MaxT type specs
Add the type restrictions in the code comments
Remove trailing spaces
OTP-9987
|
|
* rj/minor-doc-improvements:
Remove dashes from error_logger doc
Add start/0,1 and help/0 to etop's doc
Remove/add extra/missing white spaces
|
|
* rj/fix-global-spec:
Improve global:re_register_name/2,3 spec
Fix global:{random_exit_name,random_notify_name}/3 spec
|
|
|
|
zip,unzip,gzip,gunzip,compress and uncompress did not close the port
when given invalid data argument. Fixed by putting close in "try-after".
A closed port could in same cases get stuck in limbo due to data in
io-queue. Fixed by adding a flush callback.
|
|
Both functions always return `yes'.
|
|
* mh/create_cookie_error_msg:
Specify file name and error on create_cookie failure
OTP-9954
|
|
Both functions return pid(), not 'none'. The one that always returns
'none' is notify_all_name/3.
|
|
|
|
|
|
* bjorn/hipe-test-cases:
debugger tests: Increase time trap timeout
fprof_SUITE: Skip create_file_slow/1 if libraries are native
etop_SUITE: Skip a test case if libraries are native-compiled
Skip all inviso test cases if libraries are native-compiled
erl_prim_loader_SUITE: Handle native-compiled erl_boot_server
re_SUITE: Skip error_handling/1 if 're' is native code
shell_SUITE: Handle different EXIT reasons from native code
sofs_SUITE: Handle different EXIT reasons from native code
erl_eval_SUITE: Skip test of parameterized modules if native code
trace_port_SUITE: Skip test cases if 'lists' is native-compiled
call_trace_SUITE: Skip test cases if libraries are native-compiled
|
|
Since tracing is not supported on native-compiled modules and
the inet_disconnects/1 test case depends on tracing, skip the
test case if erl_boot_server is native.
|
|
Add case to handle the situation when someone call
{gen_tcp,gen_udp}:controlling_process(Port, self()). Also improve spec
and doc from gen_udp and gen_sctp for controlling_process/2.
To reproduce the issue, open an UDP port:
4> {ok,Port} = gen_udp:open(9000, [binary]).
{ok,#Port<0.587>}
5> gen_udp:controlling_process(Port, self()).
ok
Simulate error:
6> 1=2.
** exception error: no match of right hand side value 2
Here is the leak:
7> inet:i().
Port Module Recv Sent Owner Local Address Foreign Address State
Type
581 inet_udp 0 0 <0.31.0> *:cslistener *:* BOUND
DGRAM
ok
|
|
|
|
* bjorn/kernel/on_load-bug/OTP-9875:
Fix on_load handling in modules loaded by code:load_binary/3
|
|
In "13.4 Running a function when a module is loaded" in the
Reference Manual, it is said that:
A process that calls any function in a module whose on_load
function has not yet returned will be suspended until the
on_load function has returned.
That did not work if the module was loaded using code:load_binary/3.
Instead, the callers would get an 'undef' exception.
|
|
binary should be binary().
|
|
* raimo/64-bit-efile_drv/OTP-9820:
file_SUITE: Assume 64-bit windows has enough memory
erts: Badarg if port output overflows iov_len
prim_file_SUITE: large_file success depends on wordsize
file_SUITE: Increase timeout for large_file
file_SITE,prim_file_SUITE: Accept old OpenBSD pecularity
prim_file_SUITE: large_write - meaner test data and check result content
file_SUITE: large_write - check mem size before creating huge binary
erts: rewrite efile_writev to handle partial writes correctly
erts: Bugfix - driver_deq freed wrong length due to short type (int)
prim_file_SUITE: Add large_write/1
file_SUITE: Add large_write/1
file_SUITE: Refactor large_file/1
file_SUITE: Fix unix_free/1
|
|
* raimo/opu-fixes:
inet_res_SUITE: Improve portability of run-named
|
|
Temporary workaround until there is a memory info function
conveniantly usable from test suites.
|
|
|
|
The {error, enfile} return value is badly misleading and confusing for
this case, since the Posix ENFILE errno value has a well-defined meaning
that has nothing to do with Erlang ports. The fix changes the return
value to {error, system_limit}, which is consistent with e.g. various
file(3) functions. inet:format_error/1 has also been updated to support
system_limit in the same manner as file:format_error/1.
|
|
* raimo/opu-fixes:
inet_res_SUITE: Go back to old way to kill test name server
|
|
Check VM wordsize to see if a driver command with data
larger than 32-bit size is supposed to succeed. On
wordsize 4 machines (32-bit) {error,einval} is expected
since the total size passed to a driver can not exceed
sizeof(ErlDrvSizeT).
|
|
Windows needs large timeout.
|
|
|
|
|
|
|
|
Test writing slightly more than 4GB as an io list with smaller
binaries.
|
|
Test writing 2GB to a file in one go.
|
|
Factor out support functions from large_file/1 so that we can
write other test cases that use large files.
|
|
unix_free/1 returned the total size of the disk, not the free
space.
|
|
|
|
|