aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2012-10-09beam_utils: Correct usage calculations for GC BIFs in blocksBjörn Gustavsson
The usage calculation only looked at the allocation in GC BIFs, not at the source and destination registers. Also, if there is a failure label, make sure that we test whether the register can be used there.
2012-10-09beam_utils:live_opt/1: Correct liveness calculation for 'try'Björn Gustavsson
The liveness at the failure label should be ignored, because if there is an exception, all x registers will be killed.
2012-10-09beam_utils: Extend live_opt/1 to recalculate live registers in allocsBjörn Gustavsson
The code generator uses conservative liveness information. Therefore the number of live registers in allocation instructions (such as test_heap/2) may be too high. Use the actual liveness information to lower the number of live register if it's too high. The main reason we want to do this is to enable more optimizations that depend on liveness analysis, such as the beam_bool and beam_dead passes.
2012-10-09beam_utils: Check liveness in catches and try/catch blocksBjörn Gustavsson
Less conservative liveness analysis allows more optimizations to be applied (such as the ones in beam_bool).
2012-10-09v3_codegen: Clarify code generation for binary constructionBjörn Gustavsson
Add some comments to make the code generation for binary construction somewhat clearer. Also get rid of the cg_bo_newregs/2 function that serves no useful purpose. (It was probably intended to undo the effect of cg_live/2, but note that the value passed to cg_bo_newregs/2 has not passed through cg_live/2.)
2012-10-09v3_codegen: Clean up comments and remove out-commented codeBjörn Gustavsson
2012-10-09v3_codegen: Don't duplicate the functionality of cg_reg_arg/2Björn Gustavsson
2012-10-08test_server: Let start_node/3 utilize scalefactorBjörn-Egil Dahlberg
* test_server_node:start_node/3 now uses timetrap_scale_factor for timeouts (peer nodes)
2012-10-08test_server: Refactor timetrap_scale_factor/0Björn-Egil Dahlberg
2012-10-08Merge branch 'egil/inets/remove-tracing-in-tests'Björn-Egil Dahlberg
* egil/inets/remove-tracing-in-tests: inets: Remove dbg tracing from testcases
2012-10-08Merge branch 'egil/remove-unused-files'Björn-Egil Dahlberg
* egil/remove-unused-files: Remove unused files from old native dns resolver
2012-10-08Merge branch 'sze/improve-interoperability-SSH-clients'Henrik Nord
* sze/improve-interoperability-SSH-clients: Improve interoperability with SSH clients OTP-10475
2012-10-08Merge branch 'jn/ets-match-pattern-export-type'Henrik Nord
* jn/ets-match-pattern-export-type: Export ets:match_pattern/0 type Conflicts: lib/stdlib/src/ets.erl OTP-10472
2012-10-08Under Unix enable TCP_NODELAY to disable Nagel's socket algorithmAndy Richards
Under Unix enable TCP_NODELAY to disable Nagel's socket algorithm (Removes ~40ms delay on Redhat ES 6).
2012-10-08Fix the contract of erl_ddll:format_error/1Hans Bolinder
The bug in the contract of erl_ddll:format_error_int/1 in R15B that was copied to R16B (OTP-9862) has been fixed.
2012-10-08Set new peeled off SCTP socket to nonblocking socketJonas Falkevik
Peeloff feature of SCTP association creates a new socket which is not set to nonblocking. Function for receving data is shared with udp which has a default loop when reading packets which is set to 5. Calling the receive function more then once, is fine as long as there are more data to receive or socket are nonblocking. Set new peeled off socket to be nonblocking to prevent a erlang vm hangup.
2012-10-08SCTP test case with socket active options once and trueJonas Falkevik
Test case for testing socket option {active, true} after association is peeled off.
2012-10-08Merge branch 'hb/stdlib/opaque_warnings/OTP-10436'Hans Bolinder
* hb/stdlib/opaque_warnings/OTP-10436: Fix Dialyzer warnings
2012-10-05Merge branch 'sverk/code-load-refactor-later-op'Sverker Eriksson
* sverk/code-load-refactor-later-op: erts: Fix faulty lock check assert erts: Refactor naming regarding code_write_permission erts: Refactor tracing to use erts_schedule_thr_prgr_later_op erts: Allow thr_prgr_later_op to reschedule erts: Refactor code loading to use erts_schedule_thr_prgr_later_op erts: Remove some compiler warnings
2012-10-05Merge branch 'ia/ssl/controlling-process-on-listen-socket/OTP-10447'Ingela Anderton Andin
* ia/ssl/controlling-process-on-listen-socket/OTP-10447: ssl: Improve #sslsocket{} API ssl: It is now possible to call controlling_process on a listen socket, same as in gen_tcp.
2012-10-05Have supervisor send errors up the chainTomas Pihl
If a child fails to start, supervisor relies upon error_logger which does not work when IO is inhibited. Instead pass the error up the chain and let someone else use a proper Reason for any possible printouts.
2012-10-05Improve interoperability with SSH clientsStefan Zegenhagen
This patch fixes a few problems of the SSH shell server that affect the interoperability with SSH clients in widespread use. First problem is that, whenever a channel_request message is received with want_reply=true, the reply ends up being sent to the servers channel id, not the clients channel id. This causes the client to terminate the connection. The easiest solution to the problem appears to be a new function in ssh_connection_manager.erl that translates the servers channel id before sending the reply (in the same manner as other functions do it). Second problem is in ssh_cli.erl. When an SSH client sends a window_change request between PTY allocation and starting the shell (which appears to happen with some clients), ssh_cli.erl crashes because #state.buf is yet 'undefined'. Allocating an empty buffer at PTY allocation time solves the problem. Affected SSH clients: - all clients based on SSH-2.0-TrileadSSH2Java_213 (problem #1) - SSH Term Pro (problem #2)
2012-10-05ts_run: Always turn on timetrap scaling when starting common_testBjörn Gustavsson
Scaling timetraps depending on cover, debug-compiled emulator and so on is built-in to the test_server. Therefore, {multiply_timetraps,Scale} should not be set (it would multiply the timeout value twice). Only {scale_timetraps,true} needs to be set, and it must be set unconditionally as the feature tests in test_server:timetrap_scale_factor() may not return the correct scale factor until the test_server node and test cases have been started (for example, there is no cover server running).
2012-10-05Fix Dialyzer warningsHans Bolinder
Opaque types need to be exported.
2012-10-04Merge branch 'ia/ssh/sending-large-data-and-eof/OTP-10467'Ingela Anderton Andin
* ia/ssh/sending-large-data-and-eof/OTP-10467: ssh: Make test case platform independant ssh: ssh_connection:channel_data() and send_eof() now return {error, closed} for closed or invalid channels. ssh: Ensure that all data is sent before ssh:send returns. ssh: add test suite for testing channel send/receive behavior.
2012-10-04Merge branch 'ia/ssl/sslv2-test'Ingela Anderton Andin
* ia/ssl/sslv2-test: ssl: Better test to determine if sslv2 is supported by openssl
2012-10-03ssh: Make test case platform independantIngela Anderton Andin
The test case interrupted_send did not work on all platforms. Also ct-ify the test suite
2012-10-03ssh: ssh_connection:channel_data() and send_eof() now return {error, closed} ↵Daniel Goertzen
for closed or invalid channels. ssh_connection:handle_msg(#ssh_msg_channel_close...) will now cause any send() that was in progress to immediately return {error,closed}.
2012-10-03ssh: Ensure that all data is sent before ssh:send returns.Daniel Goertzen
2012-10-03ssh: add test suite for testing channel send/receive behavior.Daniel Goertzen
2012-10-03inets: Remove dbg tracing from testcasesBjörn-Egil Dahlberg
2012-10-03Merge branch 'gp/make_erlang_mode_elpa_friendly'Henrik Nord
* gp/make_erlang_mode_elpa_friendly: Make erlang-mode more compatible with package.el OTP-10465
2012-10-03Fix release_handler:find_script so it can read regexp in appupsSiri Hansen
2012-10-03Merge branch 'maint'Henrik Nord
2012-10-03Merge branch 'sa/dialyzer-fix-r15b02' into maintHenrik Nord
* sa/dialyzer-fix-r15b02: Fix a crash in race condition detection Remove old untested experimental extension Respect {plt_check,false} option when using dialyzer:run/1 Fix handling of tuple set remote types appearing in tuple sets OTP-10464
2012-10-03Merge branch 'bjorn/test_server/fix-test-cases'Björn Gustavsson
* bjorn/test_server/fix-test-cases: Provided better information when the test cases fail Remove the useless test_server_line_SUITE test suite test_server_SUITE: Remove the undefined_functions/1 test case
2012-10-02Merge branch 'egil/fix-doc-vxworks'Björn-Egil Dahlberg
* egil/fix-doc-vxworks: doc: Remove forgotten vxworks reference
2012-10-02Merge branch 'raimo/inets/https-proxy/OTP-10256'Raimo Niskanen
* raimo/inets/https-proxy/OTP-10256: inets httpc: Document that RFC 2817 is not supported inets: Dialyzer fixes inets httpc: TLS via proxy inets: Remove obsolete testcases that are now in the proxy suite inets: Add tests using external proxy running on localhost
2012-10-02inets httpc: Document that RFC 2817 is not supportedIngela Anderton Andin
2012-10-02inets: Dialyzer fixesIngela Anderton Andin
2012-10-02inets httpc: TLS via proxyIngela Anderton Andin
Introduces new option htts_proxy so that it is possible to have different proxies for http and https. The new option defaults to the old proxy option. Implements HTTP-1.1 extension method CONNECT to establish SSL/TLS tunnel We choose not to implement "TLS upgrade" as defined by RFC 2817 as this method of upgrade is vulnerable to man in the middle attacks, can be easily broken by proxies and does not seem to be widely adopted.
2012-10-02inets: Remove obsolete testcases that are now in the proxy suiteRaimo Niskanen
2012-10-02inets: Add tests using external proxy running on localhostRaimo Niskanen
2012-10-01doc: Remove forgotten vxworks referenceBjörn-Egil Dahlberg
2012-10-01ssl: Better test to determine if sslv2 is supported by opensslIngela Anderton Andin
2012-10-01ssl: Improve #sslsocket{} APIIngela Anderton Andin
A #sslsocket{} contains the fsm pid and value that was previously set to old_ssl or new_ssl to make the transition period smoother. Now that old ssl is not supported any more we use this field to store the inet socket reference instead. This enables some API functions to return quicker as they do not need to communicate with the fsm-process.
2012-10-01ssl: It is now possible to call controlling_process on a listen socket,Ingela Anderton Andin
same as in gen_tcp. Made error handling of listen sockets as arguments to funtions expecting a connected socket more inet/gen_tcp like.
2012-10-01Merge branch 'dg/keyboard_interactive'Henrik Nord
* dg/keyboard_interactive: fix typo in keyboard-interactive string OTP-10456
2012-10-01Provided better information when the test cases failBjörn Gustavsson
While at it, also make the path to the directory with the log files a clickable link.
2012-10-01Merge branch 'siri/common_test/ct_snmp-tests'Siri Hansen
* siri/common_test/ct_snmp-tests: [common_test] Added tests and corrected bugs in ct_snmp OTP-10454 OTP-10434